2012-01-12 -> Importación inicial. Integrado con Telefónica Fundación.
git-svn-id: https://192.168.0.254/svn/Proyectos.FundacionLQDVI_WebCongresos/trunk@2 94ccb1af-fd9d-d947-8d90-7f70ea60afc8
20265
db/loquedev_joomla.sql
Normal file
BIN
www/-installation-/favicon.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
210
www/-installation-/gpl.html
Normal file
@ -0,0 +1,210 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<title>Licencia GNU/GPL</title>
|
||||
<style type="text/css">
|
||||
>
|
||||
<!--
|
||||
body {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
background: #E9ECEF;
|
||||
}
|
||||
|
||||
p {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
li {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-size: 11px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<p><b>NOTA IMPORTANTE:</b></p>
|
||||
|
||||
<p>Esta es una traducción no oficial al español de la GNU General Public License. No ha sido publicada por la Free Software Foundation, y no establece legalmente las condiciones de distribución para el software que usa la GNU GPL. Estas condiciones se establecen solamente por el <a href="gpl_english.html">texto original</a>, en inglés, de la GNU GPL</p>
|
||||
|
||||
<h2>Tabla de contenidos</h2>
|
||||
<ul>
|
||||
<li><a href="#SEC1" name="TOC1" id="TOC1">LICENCIA GENERAL PÚBLICA GNU</a>
|
||||
<ul>
|
||||
<li><a href="#SEC2" name="TOC2" id="TOC2">Preámbulo</a> </li>
|
||||
<li><a href="#SEC3" name="TOC3" id="TOC3">TÉRMINOS Y CONDICIONES PARA LA COPIA, DISTRIBUCIÓN Y MODIFICACIÓN</a> </li>
|
||||
<li><a href="#SEC4" name="TOC4" id="TOC4">Cómo aplicar estos términos a sus nuevos programas</a> </li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<p></p>
|
||||
<hr />
|
||||
<h2><a href="#TOC1" name="SEC1" id="SEC1">LICENCIA GENERAL PÚBLICA GNU</a></h2>
|
||||
<p> Versión 2, Junio de 1991 </p>
|
||||
<pre>
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
||||
Se permite a cualquiera la copia y distribución de copias
|
||||
de este documento de licencia, pero no se permite su modificación.
|
||||
</pre>
|
||||
<h2><a href="#TOC2" name="SEC2" id="SEC2">Preamble</a></h2>
|
||||
<p> Las licencias que cubren la mayor parte del software están diseñadas para quitarle a usted la libertad de compartirlo y modificarlo. Por el contrario, la Licencia Pública General de GNU pretende garantizarle la libertad de compartir y modificar software libre, para asegurar que el software es libre para todos sus usuarios. Esta Licencia Pública General se aplica a la mayor parte del software del la Free Software Foundation y a cualquier otro programa si sus autores se comprometen a utilizarla. (Existe otro software de la Free Software Foundation que está cubierto por la Licencia Pública General de GNU para Bibliotecas). Si quiere, también puede aplicarla a sus propios programas. </p>
|
||||
<p> Cuando hablamos de software libre, estamos refiriéndonos a libertad, no a precio. Nuestras Licencias Públicas Generales están diseñadas para asegurarnos de que tenga la libertad de distribuir copias de software libre (y cobrar por ese servicio si quiere), de que reciba el código fuente o que pueda conseguirlo si lo quiere, de que pueda modificar el software o usar fragmentos de él en nuevos programas libres, y de que sepa que puede hacer todas estas cosas. </p>
|
||||
<p> Para proteger sus derechos necesitamos algunas restricciones que prohíban a cualquiera negarle a usted estos derechos o pedirle que renuncie a ellos. Estas restricciones se traducen en ciertas obligaciones que le afectan si distribuye copias del software, o si lo modifica. </p>
|
||||
<p> Por ejemplo, si distribuye copias de uno de estos programas, sea gratuitamente, o a cambio de una contraprestación, debe dar a los receptores todos los derechos que tiene. Debe asegurarse de que ellos también reciben, o pueden conseguir, el código fuente. Y debe mostrarles estas condiciones de forma que conozcan sus derechos. </p>
|
||||
<p> Protegemos sus derechos con la combinación de dos medidas: (1) ponemos el software bajo copyright, and (2) le ofrecemos esta licencia, que le da permiso legal para copiar, distribuir y/o modificar el software. </p>
|
||||
<p> También, para la protección de cada autor y la nuestra propia, queremos asegurarnos de que todo el mundo comprende que no se proporciona ninguna garantía para este software libre. Si el software se modifica por cualquiera y éste a su vez lo distribuye, queremos que sus receptores sepan que lo que tienen no es el original, de forma que cualquier problema introducido por otros no afecte a la reputación de los autores originales. </p>
|
||||
<p> Por último, cualquier programa libre está constantemente amenazado por patentes sobre el software. Queremos evitar el peligro de que los redistribuidores de un programa libre obtengan patentes por su cuenta, convirtiendo de facto el programa en propietario. Para evitar esto, hemos dejado claro que cualquier patente debe ser pedida para el uso libre de cualquiera, o no ser pedida. </p>
|
||||
<p> Los términos exactos y las condiciones para la copia, distribución y modificación se exponen a continuación. </p>
|
||||
<h2><a href="#TOC3" name="SEC3" id="SEC3">TÉRMINOS Y CONDICIONES PARA LA COPIA, DISTRIBUCIÓN Y MODIFICACIÓN</a></h2>
|
||||
<p> <strong>0.</strong> Esta Licencia se aplica a cualquier programa u otro tipo de trabajo que contenga una nota colocada por el tenedor del copyright diciendo que puede ser distribuido bajo los términos de esta Licencia Pública General. En adelante, Programa se referirá a cualquier programa o trabajo que cumpla esa condición y trabajo basado en el Programa se referirá bien al Programa o a cualquier trabajo derivado de él según la ley de copyright. Esto es, un trabajo que contenga el programa o una porción de él, bien en forma literal o con modificaciones y/o traducido en otro lenguaje. Por lo tanto, la traducción está incluida sin limitaciones en el término modificación. Cada concesionario (licenciatario) será denominado "usted". </p>
|
||||
<p> Cualquier otra actividad que no sea la copia, distribución o modificación no está cubierta por esta Licencia, está fuera de su ámbito. El acto de ejecutar el Programa no está restringido, y los resultados del Programa están cubiertos únicamente si sus contenidos constituyen un trabajo basado en el Programa, independientemente de haberlo producido mediante la ejecución del programa. El que esto se cumpla, depende de lo que haga el programa. </p>
|
||||
<p> <strong>1.</strong> Usted puede copiar y distribuir copias literales del código fuente del Programa, según lo ha recibido, en cualquier medio, supuesto que de forma adecuada y bien visible publique en cada copia un anuncio de copyright adecuado y un repudio de garantía, mantenga intactos todos los anuncios que se refieran a esta Licencia y a la ausencia de garantía, y proporcione a cualquier otro receptor del programa una copia de esta Licencia junto con el Programa. </p>
|
||||
<p> Puede cobrar un precio por el acto físico de transferir una copia, y puede, según su libre albedrío, ofrecer garantía a cambio de unos honorarios. </p>
|
||||
<p> <strong>2.</strong> Puede modificar su copia o copias del Programa o de cualquier porción de él, formando de esta manera un trabajo basado en el Programa, y copiar y distribuir esa modificación o trabajo bajo los términos del apartado 1, antedicho, supuesto que además cumpla las siguientes condiciones:</p>
|
||||
<p></p>
|
||||
<ul>
|
||||
<li><strong>a)</strong> Debe hacer que los ficheros modificados lleven anuncios prominentes indicando que los ha cambiado y la fecha de cualquier cambio.
|
||||
<p>
|
||||
</p>
|
||||
</li>
|
||||
<li><strong>b)</strong> Debe hacer que cualquier trabajo que distribuya o publique y que en todo o en parte contenga o sea derivado del Programa o de cualquier parte de él sea licenciada como un todo, sin carga alguna, a todas las terceras partes y bajo los términos de esta Licencia.
|
||||
<p>
|
||||
</p>
|
||||
</li>
|
||||
<li><strong>c)</strong> Si el programa modificado lee normalmente órdenes interactivamente cuando es ejecutado, debe hacer que, cuando comience su ejecución para ese uso interactivo de la forma más habitual, muestre o escriba un mensaje que incluya un anuncio de copyright y un anuncio de que no se ofrece ninguna garantía (o por el contrario que sí se ofrece garantía) y que los usuarios pueden redistribuir el programa bajo estas condiciones, e indicando al usuario cómo ver una copia de esta licencia. (Excepción: si el propio programa es interactivo pero normalmente no muestra ese anuncio, no se requiere que su trabajo basado en el Programa muestre ningún anuncio).
|
||||
</li>
|
||||
</ul>
|
||||
<p>Estos requisitos se aplican al trabajo modificado como un todo. Si partes identificables de ese trabajo no son derivadas del Programa, y pueden, razonablemente, ser consideradas trabajos independientes y separados por ellos mismos, entonces esta Licencia y sus términos no se aplican a esas partes cuando sean distribuidas como trabajos separados. Pero cuando distribuya esas mismas secciones como partes de un todo que es un trabajo basado en el Programa, la distribución del todo debe ser según los términos de esta licencia, cuyos permisos para otros licenciatarios se extienden al todo completo, y por lo tanto a todas y cada una de sus partes, con independencia de quién la escribió.</p>
|
||||
<p> Por lo tanto, no es la intención de este apartado reclamar derechos o desafiar sus derechos sobre trabajos escritos totalmente por usted mismo. El intento es ejercer el derecho a controlar la distribución de trabajos derivados o colectivos basados en el Programa.
|
||||
</p>
|
||||
<p> Además, el simple hecho de reunir un trabajo no basado en el Programa con el Programa (o con un trabajo basado en el Programa) en un volumen de almacenamiento o en un medio de distribución no hace que dicho trabajo entre dentro del ámbito cubierto por esta Licencia.
|
||||
</p>
|
||||
<p> <strong>3.</strong> YPuede copiar y distribuir el Programa (o un trabajo basado en él, según se especifica en el apartado 2, como código objeto o en formato ejecutable según los términos de los apartados 1 y 2, supuesto que además cumpla una de las siguientes condiciones:
|
||||
<!-- we use this doubled UL to get the sub-sections indented, -->
|
||||
<!-- while making the bullets as unobvious as possible. -->
|
||||
</p>
|
||||
<ul>
|
||||
<li><strong>a)</strong> Acompañarlo con el código fuente completo correspondiente, en formato electrónico, que debe ser distribuido según se especifica en los apartados 1 y 2 de esta Licencia en un medio habitualmente utilizado para el intercambio de programas, o,
|
||||
<p>
|
||||
</p>
|
||||
</li>
|
||||
<li><strong>b)</strong> Acompañarlo con una oferta por escrito, válida durante al menos tres años, de proporcionar a cualquier tercera parte una copia completa en formato electrónico del código fuente correspondiente, a un coste no mayor que el de realizar físicamente la distribución del fuente, que será distribuido bajo las condiciones descritas en los apartados 1 y 2 anteriores, en un medio habitualmente utilizado para el intercambio de programas, o,
|
||||
<p>
|
||||
</p>
|
||||
</li>
|
||||
<li><strong>c)</strong> Acompañarlo con la información que recibió ofreciendo distribuir el código fuente correspondiente. (Esta opción se permite sólo para distribución no comercial y sólo si usted recibió el programa como código objeto o en formato ejecutable con tal oferta, de acuerdo con el apartado b anterior).
|
||||
</li>
|
||||
</ul>
|
||||
<p>Por código fuente de un trabajo se entiende la forma preferida del trabajo cuando se le hacen modificaciones. Para un trabajo ejecutable, se entiende por código fuente completo todo el código fuente para todos los módulos que contiene, más cualquier fichero asociado de definición de interfaces, más los guiones utilizados para controlar la compilación e instalación del ejecutable. Como excepción especial el código fuente distribuido no necesita incluir nada que sea distribuido normalmente (bien como fuente, bien en forma binaria) con los componentes principales (compilador, kernel y similares) del sistema operativo en el cual funciona el ejecutable, a no ser que el propio componente acompañe al ejecutable. </p>
|
||||
<p> Si la distribución del ejecutable o del código objeto se hace mediante la oferta acceso para copiarlo de un cierto lugar, entonces se considera la oferta de acceso para copiar el código fuente del mismo lugar como distribución del código fuente, incluso aunque terceras partes no estén forzadas a copiar el fuente junto con el código objeto.
|
||||
</p>
|
||||
<p> <strong>4.</strong> No puede copiar, modificar, sublicenciar o distribuir el Programa excepto como prevé expresamente esta Licencia. Cualquier intento de copiar, modificar sublicenciar o distribuir el Programa de otra forma es inválida, y hará que cesen automáticamente los derechos que te proporciona esta Licencia. En cualquier caso, las partes que hayan recibido copias o derechos de usted bajo esta Licencia no cesarán en sus derechos mientras esas partes continúen cumpliéndola.
|
||||
</p>
|
||||
<p> <strong>5.</strong> No está obligado a aceptar esta licencia, ya que no la ha firmado. Sin embargo, no hay hada más que le proporcione permiso para modificar o distribuir el Programa o sus trabajos derivados. Estas acciones están prohibidas por la ley si no acepta esta Licencia. Por lo tanto, si modifica o distribuye el Programa (o cualquier trabajo basado en el Programa), está indicando que acepta esta Licencia para poder hacerlo, y todos sus términos y condiciones para copiar, distribuir o modificar el Programa o trabajos basados en él.
|
||||
</p>
|
||||
<p> <strong>6.</strong> Cada vez que redistribuya el Programa (o cualquier trabajo basado en el Programa), el receptor recibe automáticamente una licencia del licenciatario original para copiar, distribuir o modificar el Programa, de forma sujeta a estos términos y condiciones. No puede imponer al receptor ninguna restricción más sobre el ejercicio de los derechos aquí garantizados. No es usted responsable de hacer cumplir esta licencia por terceras partes.
|
||||
</p>
|
||||
<p> <strong>7.</strong> Si como consecuencia de una resolución judicial o de una alegación de infracción de patente o por cualquier otra razón (no limitada a asuntos relacionados con patentes) se le imponen condiciones (ya sea por mandato judicial, por acuerdo o por cualquier otra causa) que contradigan las condiciones de esta Licencia, ello no le exime de cumplir las condiciones de esta Licencia. Si no puede realizar distribuciones de forma que se satisfagan simultáneamente sus obligaciones bajo esta licencia y cualquier otra obligación pertinente entonces, como consecuencia, no puede distribuir el Programa de ninguna forma. Por ejemplo, si una patente no permite la redistribución libre de derechos de autor del Programa por parte de todos aquellos que reciban copias directa o indirectamente a través de usted, entonces la única forma en que podría satisfacer tanto esa condición como esta Licencia sería evitar completamente la distribución del Programa.
|
||||
</p>
|
||||
<p> Si cualquier porción de este apartado se considera inválida o imposible de cumplir bajo cualquier circunstancia particular ha de cumplirse el resto y la sección por entero ha de cumplirse en cualquier otra circunstancia.
|
||||
</p>
|
||||
<p> No es el propósito de este apartado inducirle a infringir ninguna reivindicación de patente ni de ningún otro derecho de propiedad o impugnar la validez de ninguna de dichas reivindicaciones. Este apartado tiene el único propósito de proteger la integridad del sistema de distribución de software libre, que se realiza mediante prácticas de licencia pública. Mucha gente ha hecho contribuciones generosas a la gran variedad de software distribuido mediante ese sistema con la confianza de que el sistema se aplicará consistentemente. Será el autor/donante quien decida si quiere distribuir software mediante cualquier otro sistema y una licencia no puede imponer esa elección.
|
||||
</p>
|
||||
<p> Este apartado pretende dejar completamente claro lo que se cree que es una consecuencia del resto de esta Licencia.
|
||||
</p>
|
||||
<p> <strong>8.</strong> Si la distribución y/o uso de el Programa está restringida en ciertos países, bien por patentes o por interfaces bajo copyright, el tenedor del copyright que coloca este Programa bajo esta Licencia puede añadir una limitación explícita de distribución geográfica excluyendo esos países, de forma que la distribución se permita sólo en o entre los países no excluidos de esta manera. En ese caso, esta Licencia incorporará la limitación como si estuviese escrita en el cuerpo de esta Licencia.
|
||||
</p>
|
||||
<p> <strong>9.</strong> La Free Software Foundation puede publicar versiones revisadas y/o nuevas de la Licencia Pública General de tiempo en tiempo. Dichas nuevas versiones serán similares en espíritu a la presente versión, pero pueden ser diferentes en detalles para considerar nuevos problemas o situaciones.
|
||||
</p>
|
||||
<p> Cada versión recibe un número de versión que la distingue de otras. Si el Programa especifica un número de versión de esta Licencia que se refiere a ella y a cualquier versión posterior, tienes la opción de seguir los términos y condiciones, bien de esa versión, bien de cualquier versión posterior publicada por la Free Software Foundation. Si el Programa no especifica un número de versión de esta Licencia, puedes escoger cualquier versión publicada por la Free Software Foundation.
|
||||
</p>
|
||||
<p> <strong>10.</strong> Si quiere incorporar partes del Programa en otros programas libres cuyas condiciones de distribución son diferentes, escribe al autor para pedirle permiso. Si el software tiene copyright de la Free Software Foundation, escribe a la Free Software Foundation: algunas veces hacemos excepciones en estos casos. Nuestra decisión estará guiada por el doble objetivo de de preservar la libertad de todos los derivados de nuestro software libre y promover el que se comparta y reutilice el software en general.
|
||||
</p>
|
||||
<p><strong>AUSENCIA DE GARANTÍA</strong></p>
|
||||
<p> <strong>11.</strong> COMO EL PROGRAMA SE LICENCIA LIBRE DE CARGAS, NO SE OFRECE NINGUNA GARANTÍA SOBRE EL PROGRAMA, EN TODAS LA EXTENSIÓN PERMITIDA POR LA LEGISLACIÓN APLICABLE. EXCEPTO CUANDO SE INDIQUE DE OTRA FORMA POR ESCRITO, LOS TENEDORES DEL COPYRIGHT Y/U OTRAS PARTES PROPORCIONAN EL PROGRAMA TAL CUAL, SIN GARANTÍA DE NINGUNA CLASE, BIEN EXPRESA O IMPLÍCITA, CON INCLUSIÓN, PERO SIN LIMITACIÓN A LAS GARANTÍAS MERCANTILES IMPLÍCITAS O A LA CONVENIENCIA PARA UN PROPÓSITO PARTICULAR. CUALQUIER RIESGO REFERENTE A LA CALIDAD Y PRESTACIONES DEL PROGRAMA ES ASUMIDO POR USTED. SI SE PROBASE QUE EL PROGRAMA ES DEFECTUOSO, ASUME EL COSTE DE CUALQUIER SERVICIO, REPARACIÓN O CORRECCIÓN.
|
||||
</p>
|
||||
<p> <strong>12.</strong> EN NINGÚN CASO, SALVO QUE LO REQUIERA LA LEGISLACIÓN APLICABLE O HAYA SIDO ACORDADO POR ESCRITO, NINGÚN TENEDOR DEL COPYRIGHT NI NINGUNA OTRA PARTE QUE MODIFIQUE Y/O REDISTRIBUYA EL PROGRAMA SEGÚN SE PERMITE EN ESTA LICENCIA SERÁ RESPONSABLE ANTE USTED POR DAÑOS, INCLUYENDO CUALQUIER DAÑO GENERAL, ESPECIAL, INCIDENTAL O RESULTANTE PRODUCIDO POR EL USO O LA IMPOSIBILIDAD DE USO DEL PROGRAMA (CON INCLUSIÓN, PERO SIN LIMITACIÓN A LA PÉRDIDA DE DATOS O A LA GENERACIÓN INCORRECTA DE DATOS O A PÉRDIDAS SUFRIDAS POR USTED O POR TERCERAS PARTES O A UN FALLO DEL PROGRAMA AL FUNCIONAR EN COMBINACIÓN CON CUALQUIER OTRO PROGRAMA), INCLUSO SI DICHO TENEDOR U OTRA PARTE HA SIDO ADVERTIDO DE LA POSIBILIDAD DE DICHOS DAÑOS.
|
||||
</p>
|
||||
<p>
|
||||
</p>
|
||||
<h2>FIN DE TÉRMINOS Y CONDICIONES</h2>
|
||||
<h2><a href="#TOC4" name="SEC4" id="SEC4">Cómo aplicar estos términos a sus nuevos programas</a></h2>
|
||||
<p> Para el público en general, la mejor forma de conseguirlo es convirtiéndolo en software libre que cualquiera pueda redistribuir y cambiar bajo estos términos. </p>
|
||||
<p> Para hacerlo, añada los siguientes anuncios al programa. Lo más seguro es añadirlos al principio de cada fichero fuente para transmitir lo más efectivamente posible la ausencia de garantía. Además cada fichero debería tener al menos la línea de copyright y un indicador a dónde puede encontrarse el anuncio completo. </p>
|
||||
<pre>
|
||||
<var>una línea para indicar el nombre del programa
|
||||
y una rápida idea de qué hace.</var>
|
||||
Copyright (C) <var>año</var> <var>nombre del autor</var>
|
||||
|
||||
Este programa es software libre. Puede redistribuirlo
|
||||
y/o modificarlo bajo los términos de la Licencia Pública
|
||||
General de GNU según es publicada por la Free Software
|
||||
Foundation, bien de la versión 2 de dicha Licencia o
|
||||
bien (según su elección) de cualquier versión posterior.
|
||||
|
||||
Este programa se distribuye con la esperanza de que sea
|
||||
útil, pero SIN NINGUNA GARANTÍA, incluso sin la garantía
|
||||
MERCANTIL implícita o sin garantizar la CONVENIENCIA PARA
|
||||
UN PROPÓSITO PARTICULAR. Véase la Licencia Pública General
|
||||
de GNU para más detalles.
|
||||
|
||||
Debería haber recibido una copia de la Licencia Pública
|
||||
General junto con este programa. Si no ha sido así,
|
||||
escriba a la Free Software Foundation, Inc.,
|
||||
en 675 Mass Ave, Cambridge, MA 02139, EEUU.
|
||||
</pre>
|
||||
<p> Añada también información sobre cómo contactar con usted mediante correo electrónico y postal. </p>
|
||||
<p> Si el programa es interactivo, haga que muestre un pequeño anuncio como el siguiente, cuando comienza a funcionar en modo interactivo: </p>
|
||||
<pre>
|
||||
Gnomovision versión 69, Copyright (C)
|
||||
<var>año</var> <var>nombre del autor</var>
|
||||
Gnomovision no ofrece ABSOLUTAMENTE NINGUNA GARANTÍA.
|
||||
Para más detalles escriba "show w". Este software es libre,
|
||||
y se le permite redistribuirlo bajo ciertas condiciones;
|
||||
escriba "show c" para más detalles.
|
||||
</pre>
|
||||
<p> Los comandos hipotéticos <samp>show w</samp> y <samp>show c</samp> deberían mostrar las partes adecuadas de la Licencia Pública General. Por supuesto, los comandos que use pueden llamarse de cualquier otra manera. Podrían incluso ser pulsaciones del ratón o elementos de un menú (lo que sea apropiado para su programa). </p>
|
||||
<p> También debería conseguir que su empleador (si trabaja como programador) o su Universidad (si es el caso) firme un renuncia de copyright para el programa, si es necesario. A continuación se ofrece un ejemplo, altere los nombres según sea conveniente: </p>
|
||||
<pre>
|
||||
Yoyodyne, Inc. mediante este documento renuncia a
|
||||
cualquier interés de derechos de copyright con
|
||||
respecto al programa Gnomovision (que hace pasadas
|
||||
a compiladores) escrito por James Hacker.
|
||||
|
||||
<var>firma de Ty Coon</var>, <var>fecha</var>
|
||||
Ty Coon, Presidente de Vice
|
||||
</pre>
|
||||
<p> Esta Licencia Pública General no permite que incluya sus programas en programas propietarios. Si su programa es una biblioteca de subrutinas, puede considerar más útil el permitir el enlazado de aplicaciones propietarias con la biblioteca. Si este es el caso, use la <b>Licencia Pública General Menor de GNU</b> en lugar de esta Licencia.
|
||||
</p>
|
||||
<p>
|
||||
<body>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
197
www/-installation-/gpl_english.html
Normal file
@ -0,0 +1,197 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<title>Untitled Document</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
|
||||
body {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
background: #fff;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
a:link, a:visited {
|
||||
color: #0B55C4;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #009;
|
||||
}
|
||||
|
||||
p {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
li {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-size: 11px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h2>Table of Contents</h2>
|
||||
<ul>
|
||||
<li><a href="gpl.html#SEC1" name="TOC1" id="TOC1">GNU GENERAL PUBLIC LICENSE</a>
|
||||
<ul>
|
||||
<li><a href="gpl.html#SEC2" name="TOC2" id="TOC2">Preamble</a> </li>
|
||||
<li><a href="gpl.html#SEC3" name="TOC3" id="TOC3">TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</a> </li>
|
||||
<li><a href="gpl.html#SEC4" name="TOC4" id="TOC4">How to Apply These Terms to Your New Programs</a> </li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<hr />
|
||||
<h2><a href="gpl.html#TOC1" name="SEC1" id="SEC1">GNU GENERAL PUBLIC LICENSE</a></h2>
|
||||
<p> Version 2, June 1991 </p>
|
||||
<pre>
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
</pre>
|
||||
<h2><a href="gpl.html#TOC2" name="SEC2" id="SEC2">Preamble</a></h2>
|
||||
<p> The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. </p>
|
||||
<p> When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. </p>
|
||||
<p> To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. </p>
|
||||
<p> For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </p>
|
||||
<p> We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. </p>
|
||||
<p> Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. </p>
|
||||
<p> Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. </p>
|
||||
<p> The precise terms and conditions for copying, distribution and modification follow. </p>
|
||||
<h2><a href="gpl.html#TOC3" name="SEC3" id="SEC3">TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</a></h2>
|
||||
<p> <strong>0.</strong> This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".</p>
|
||||
<p> Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.</p>
|
||||
<p> <strong>1.</strong> You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.</p>
|
||||
<p> You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.</p>
|
||||
<p> <strong>2.</strong> You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:</p>
|
||||
<ul>
|
||||
<li><strong>a)</strong> You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
|
||||
</li>
|
||||
<li><strong>b)</strong> You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
|
||||
</li>
|
||||
<li><strong>c)</strong> If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
|
||||
</li>
|
||||
</ul>
|
||||
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
|
||||
<p> Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
|
||||
</p>
|
||||
<p> In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
|
||||
</p>
|
||||
<p> <strong>3.</strong> You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
|
||||
<!-- we use this doubled UL to get the sub-sections indented, -->
|
||||
<!-- while making the bullets as unobvious as possible. -->
|
||||
</p>
|
||||
<ul>
|
||||
<li><strong>a)</strong> Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
|
||||
</li>
|
||||
<li><strong>b)</strong> Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
|
||||
</li>
|
||||
<li><strong>c)</strong> Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
|
||||
</li>
|
||||
</ul>
|
||||
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
|
||||
<p> If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
|
||||
</p>
|
||||
<p> <strong>4.</strong> You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
|
||||
</p>
|
||||
<p> <strong>5.</strong> You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
|
||||
</p>
|
||||
<p> <strong>6.</strong> Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
|
||||
</p>
|
||||
<p> <strong>7.</strong> If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
|
||||
</p>
|
||||
<p> If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
|
||||
</p>
|
||||
<p> It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
|
||||
</p>
|
||||
<p> This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
|
||||
</p>
|
||||
<p> <strong>8.</strong> If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
|
||||
</p>
|
||||
<p> <strong>9.</strong> The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
|
||||
</p>
|
||||
<p> Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
|
||||
</p>
|
||||
<p> <strong>10.</strong> If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
|
||||
</p>
|
||||
<p><strong>NO WARRANTY</strong></p>
|
||||
<p> <strong>11.</strong> BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
</p>
|
||||
<p> <strong>12.</strong> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
</p>
|
||||
<h2>END OF TERMS AND CONDITIONS</h2>
|
||||
<h2><a href="gpl.html#TOC4" name="SEC4" id="SEC4">How to Apply These Terms to Your New Programs</a></h2>
|
||||
<p> If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </p>
|
||||
<p> To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. </p>
|
||||
<pre>
|
||||
<var>one line to give the program's name and an idea of what it does.</var>
|
||||
Copyright (C) <var>yyyy</var> <var>name of author</var>
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
02111-1307, USA.
|
||||
</pre>
|
||||
<p> Also add information on how to contact you by electronic and paper mail. </p>
|
||||
<p> If the program is interactive, make it output a short notice like this when it starts in an interactive mode: </p>
|
||||
<pre>
|
||||
Gnomovision version 69, Copyright (C) <var>year</var> <var>name of author</var>
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
|
||||
type `show w'. This is free software, and you are welcome
|
||||
to redistribute it under certain conditions; type `show c'
|
||||
for details.
|
||||
</pre>
|
||||
<p> The hypothetical commands <samp>`show w'</samp> and <samp>`show c'</samp> should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than <samp>`show w'</samp> and <samp>`show c'</samp>; they could even be mouse-clicks or menu items--whatever suits your program. </p>
|
||||
<p> You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: </p>
|
||||
<pre>
|
||||
Yoyodyne, Inc., hereby disclaims all copyright
|
||||
interest in the program `Gnomovision'
|
||||
(which makes passes at compilers) written
|
||||
by James Hacker.
|
||||
|
||||
<var>signature of Ty Coon</var>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
</pre>
|
||||
<p> This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the <a href="http://www.gnu.org/licenses/lgpl.html" target="_blank">GNU Lesser General Public License</a> instead of this License.
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
254
www/-installation-/includes/application.php
Normal file
@ -0,0 +1,254 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: application.php 10823 2008-08-27 17:18:14Z tcp $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
|
||||
/**
|
||||
* Joomla! Application class
|
||||
*
|
||||
* Provide many supporting API functions
|
||||
*
|
||||
* @package Joomla
|
||||
* @final
|
||||
*/
|
||||
class JInstallation extends JApplication
|
||||
{
|
||||
/**
|
||||
* The url of the site
|
||||
*
|
||||
* @var string
|
||||
* @access protected
|
||||
*/
|
||||
var $_siteURL = null;
|
||||
|
||||
/**
|
||||
* Class constructor
|
||||
*
|
||||
* @access protected
|
||||
* @param array An optional associative array of configuration settings.
|
||||
* Recognized key values include 'clientId' (this list is not meant to be comprehensive).
|
||||
*/
|
||||
function __construct($config = array())
|
||||
{
|
||||
$config['clientId'] = 2;
|
||||
parent::__construct($config);
|
||||
|
||||
JError::setErrorHandling(E_ALL, 'Ignore');
|
||||
$this->_createConfiguration();
|
||||
|
||||
//Set the root in the URI based on the application name
|
||||
JURI::root(null, str_replace('/'.$this->getName(), '', JURI::base(true)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the application
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function render()
|
||||
{
|
||||
$document =& JFactory::getDocument();
|
||||
$config =& JFactory::getConfig();
|
||||
$user =& JFactory::getUser();
|
||||
|
||||
switch($document->getType())
|
||||
{
|
||||
case 'html':
|
||||
//set metadata
|
||||
$document->setTitle(JText::_('PAGE_TITLE'));
|
||||
break;
|
||||
|
||||
default: break;
|
||||
}
|
||||
|
||||
// Define component path
|
||||
define( 'JPATH_COMPONENT', JPATH_BASE.DS.'installer');
|
||||
define( 'JPATH_COMPONENT_SITE', JPATH_SITE.DS.'installer');
|
||||
define( 'JPATH_COMPONENT_ADMINISTRATOR', JPATH_ADMINISTRATOR.DS.'installer');
|
||||
|
||||
// Execute the component
|
||||
ob_start();
|
||||
require_once(JPATH_COMPONENT.DS.'installer.php');
|
||||
$contents = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
$params = array(
|
||||
'template' => 'template',
|
||||
'file' => 'index.php',
|
||||
'directory' => JPATH_THEMES
|
||||
);
|
||||
|
||||
$document->setBuffer( $contents, 'installation');
|
||||
$document->setTitle(JText::_('PAGE_TITLE'));
|
||||
$data = $document->render(false, $params);
|
||||
JResponse::setBody($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialise the application.
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function initialise( $options = array())
|
||||
{
|
||||
//Get the localisation information provided in the localise xml file
|
||||
$forced = $this->getLocalise();
|
||||
|
||||
// Check URL arguement - useful when user has just set the language preferences
|
||||
if(empty($options['language']))
|
||||
{
|
||||
$vars = JRequest::getVar('vars');
|
||||
if ( is_array($vars) && ! empty($vars['lang']) )
|
||||
{
|
||||
$varLang = $vars['lang'];
|
||||
$options['language'] = $varLang;
|
||||
}
|
||||
}
|
||||
|
||||
// Check the application state - useful when the user has previously set the language preference
|
||||
if(empty($options['language']))
|
||||
{
|
||||
$configLang = $this->getUserState('application.lang');
|
||||
if ( $configLang ) {
|
||||
$options['language'] = $configLang;
|
||||
}
|
||||
}
|
||||
|
||||
// This could be a first-time visit - try to determine what the client accepts
|
||||
if(empty($options['language']))
|
||||
{
|
||||
if ( empty($forced['lang'])) {
|
||||
jimport('joomla.language.helper');
|
||||
$options['language'] = JLanguageHelper::detectLanguage();
|
||||
} else {
|
||||
$options['language'] = $forced['lang'];
|
||||
}
|
||||
}
|
||||
|
||||
// Give the user English
|
||||
if (empty($options['language'])) {
|
||||
$options['language'] = 'en-GB';
|
||||
}
|
||||
|
||||
//Set the language in the class
|
||||
$conf =& JFactory::getConfig();
|
||||
$conf->setValue('config.language', $options['language']);
|
||||
$conf->setValue('config.debug_lang', $forced['debug']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set configuration values
|
||||
*
|
||||
* @access private
|
||||
* @param array Array of configuration values
|
||||
* @param string The namespace
|
||||
*/
|
||||
function setCfg( $vars, $namespace = 'config' ) {
|
||||
$this->_registry->loadArray( $vars, $namespace );
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the configuration registry
|
||||
*
|
||||
* @access private
|
||||
*/
|
||||
function _createConfiguration()
|
||||
{
|
||||
jimport( 'joomla.registry.registry' );
|
||||
|
||||
// Create the registry with a default namespace of config which is read only
|
||||
$this->_registry = new JRegistry( 'config' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the template
|
||||
*
|
||||
* @return string The template name
|
||||
*/
|
||||
function getTemplate()
|
||||
{
|
||||
return 'template';
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the user session
|
||||
*
|
||||
* @access private
|
||||
* @param string The sessions name
|
||||
* @return object JSession
|
||||
*/
|
||||
function &_createSession( $name )
|
||||
{
|
||||
$options = array();
|
||||
$options['name'] = $name;
|
||||
|
||||
$session = &JFactory::getSession($options);
|
||||
if (!is_a($session->get('registry'), 'JRegistry')) {
|
||||
// Registry has been corrupted somehow
|
||||
$session->set('registry', new JRegistry('session'));
|
||||
}
|
||||
|
||||
return $session;
|
||||
}
|
||||
|
||||
/**
|
||||
* returns the langauge code and help url set in the localise.xml file.
|
||||
* Used for forcing a particular language in localised releases
|
||||
*/
|
||||
function getLocalise()
|
||||
{
|
||||
$xml = & JFactory::getXMLParser('Simple');
|
||||
|
||||
if (!$xml->loadFile(JPATH_SITE.DS.'installation'.DS.'localise.xml')) {
|
||||
return 'no file'; //null;
|
||||
}
|
||||
|
||||
// Check that it's a localise file
|
||||
if ($xml->document->name() != 'localise') {
|
||||
return 'not a localise'; //null;
|
||||
}
|
||||
|
||||
$tags = $xml->document->children();
|
||||
$ret = array();
|
||||
$ret['lang'] = $tags[0]->data();
|
||||
$ret['helpurl'] = $tags[1]->data();
|
||||
$ret['debug'] = $tags[2]->data();
|
||||
return $ret;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the installed admin language files in the administrative and
|
||||
* front-end area.
|
||||
*
|
||||
* @access private
|
||||
* @return array Array with installed language packs in admin area
|
||||
*/
|
||||
function getLocaliseAdmin()
|
||||
{
|
||||
jimport('joomla.filesystem.folder');
|
||||
|
||||
// Read the files in the admin area
|
||||
$path = JLanguage::getLanguagePath(JPATH_SITE.DS.'administrator');
|
||||
$langfiles['admin'] = JFolder::folders( $path );
|
||||
|
||||
$path = JLanguage::getLanguagePath(JPATH_SITE);
|
||||
$langfiles['site'] = JFolder::folders( $path );
|
||||
|
||||
return $langfiles;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
451
www/-installation-/includes/bigdump.php
Normal file
@ -0,0 +1,451 @@
|
||||
<?php
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
|
||||
//TODO: Rewrite this so its cleaner
|
||||
|
||||
// BigDump ver. 0.28b from 2007-06-08
|
||||
// Staggered import of an large MySQL Dump (like phpMyAdmin 2.x Dump)
|
||||
// Even through the webservers with hard runtime limit and those in safe mode
|
||||
// Works fine with Internet Explorer 7.0 and Firefox 2.x
|
||||
|
||||
// Author: Alexey Ozerov (alexey at ozerov dot de)
|
||||
// AJAX & CSV functionalities: Krzysiek Herod (kr81uni at wp dot pl)
|
||||
// Copyright: GPL (C) 2003-2007
|
||||
// More Infos: http://www.ozerov.de/bigdump.php
|
||||
|
||||
// This program is free software; you can redistribute it and/or modify it under the
|
||||
// terms of the GNU General Public License as published by the Free Software Foundation;
|
||||
// either version 2 of the License, or (at your option) any later version.
|
||||
|
||||
// THIS SCRIPT IS PROVIDED AS IS, WITHOUT ANY WARRANTY OR GUARANTEE OF ANY KIND
|
||||
|
||||
// USAGE
|
||||
|
||||
// 1. Adjust the database configuration in this file
|
||||
// 2. Drop the old tables on the target database if your dump doesn't contain "DROP TABLE"
|
||||
// 3. Create the working directory (e.g. dump) on your web-server
|
||||
// 4. Upload bigdump.php and your dump files (.sql, .gz) via FTP to the working directory
|
||||
// 5. Run the bigdump.php from your browser via URL like http://www.yourdomain.com/dump/bigdump.php
|
||||
// 6. BigDump can start the next import session automatically if you enable the JavaScript
|
||||
// 7. Wait for the script to finish, do not close the browser window
|
||||
// 8. IMPORTANT: Remove bigdump.php and your dump files from the web-server
|
||||
|
||||
// If Timeout errors still occure you may need to adjust the $linepersession setting in this file
|
||||
|
||||
// LAST CHANGES
|
||||
|
||||
// *** Improved error message for file open errors
|
||||
// *** Handle CSV files (you have to specify $csv_insert_table)
|
||||
// *** Restart script in the background using AJAX
|
||||
|
||||
/**
|
||||
* Big Dump Handler for Migration and Import
|
||||
* Rewritten by Sam Moffatt from original work by Alexey Ozerov) for Joomla! 1.5
|
||||
*/
|
||||
|
||||
//defined('_JEXEC') or die('Access Denied');
|
||||
|
||||
// Database configuration
|
||||
|
||||
$db_server = '';
|
||||
$db_name = '';
|
||||
$db_username = '';
|
||||
$db_password = '';
|
||||
?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<title><?php JText::_('Migration load script') ?></title>
|
||||
<script type="text/javascript" src="includes/js/installation.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
|
||||
// Other Settings
|
||||
|
||||
$csv_insert_table = ''; // Destination table for CSV files
|
||||
$ajax = false; // AJAX mode: import will be done without refreshing the website
|
||||
//$filename = ''; // Specify the dump filename to suppress the file selection dialog
|
||||
$linespersession = 3000; // Lines to be executed per one import session
|
||||
$delaypersession = 0; // You can specify a sleep time in milliseconds after each session
|
||||
// Works only if JavaScript is activated. Use to reduce server overrun
|
||||
|
||||
// Allowed comment delimiters: lines starting with these strings will be dropped by BigDump
|
||||
|
||||
$comment[] = '#'; // Standard comment lines are dropped by default
|
||||
$comment[] = '-- ';
|
||||
// $comment[]='---'; // Uncomment this line if using proprietary dump created by outdated mysqldump
|
||||
// $comment[]='/*!'; // Or add your own string to leave out other proprietary things
|
||||
|
||||
// Connection character set should be the same as the dump file character set (utf8, latin1, cp1251, koi8r etc.)
|
||||
// See http://dev.mysql.com/doc/refman/5.0/en/charset-charsets.html for the full list
|
||||
|
||||
$db_connection_charset = '';
|
||||
|
||||
// *******************************************************************************************
|
||||
// If not familiar with PHP please don't change anything below this line
|
||||
// *******************************************************************************************
|
||||
|
||||
ob_start();
|
||||
|
||||
define('VERSION', '0.28b');
|
||||
define('DATA_CHUNK_LENGTH', 16384); // How many chars are read per time
|
||||
define('MAX_QUERY_LINES', 300); // How many lines may be considered to be one query (except text lines)
|
||||
define('TESTMODE', false); // Set to true to process the file without actually accessing the database
|
||||
|
||||
header("Expires: Mon, 1 Dec 2003 01:00:00 GMT");
|
||||
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
|
||||
header("Cache-Control: no-store, no-cache, must-revalidate");
|
||||
header("Cache-Control: post-check=0, pre-check=0", false);
|
||||
header("Pragma: no-cache");
|
||||
|
||||
//@ini_set('auto_detect_line_endings', true);
|
||||
//@set_time_limit(0);
|
||||
|
||||
// Clean and strip anything we don't want from user's input [0.27b]
|
||||
foreach ($_REQUEST as $key => $val) {
|
||||
$val = preg_replace("/[^_A-Za-z0-9-\.&=]/i", '', $val);
|
||||
$_REQUEST[$key] = $val;
|
||||
}
|
||||
|
||||
// Determine filename to execute for loading...
|
||||
$filename = JPATH_BASE . DS . 'sql' . DS . 'migration' . DS . 'migrate.sql';
|
||||
$_REQUEST['fn'] = $filename;
|
||||
$error = false;
|
||||
$file = false;
|
||||
// Single file mode
|
||||
|
||||
if (!$error && !isset ($_REQUEST["fn"]) && $filename != "") {
|
||||
echo ("<p><a href=\"" . str_replace(array('"', '<', '>', "'"), '', $_SERVER["PHP_SELF"]) . "?start=1&fn=$filename&foffset=0&totalqueries=0\">Start Import</a> from $filename into $db_name at $db_server</p>\n");
|
||||
}
|
||||
|
||||
// Open the file
|
||||
|
||||
if (!$error && isset ($_REQUEST["fn"])) {
|
||||
|
||||
// Recognize GZip filename
|
||||
|
||||
if (preg_match("#\.gz$#i", $_REQUEST["fn"]))
|
||||
$gzipmode = true;
|
||||
else
|
||||
$gzipmode = false;
|
||||
if ((!$gzipmode && !$file = fopen($_REQUEST["fn"], "rt")) || ($gzipmode && !$file = gzopen($_REQUEST["fn"], "rt"))) {
|
||||
echo ("<p class=\"error\">". JText::sprintf("Cant open file for import", $_REQUEST["fn"]) ."</p>\n");
|
||||
echo ("<p>". JText::_('CHECKDUMPFILE') .
|
||||
" .<br />". JText::_('NEEDTOUPLOADFILE')."</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
|
||||
// Get the file size (can't do it fast on gzipped files, no idea how)
|
||||
|
||||
else
|
||||
if ((!$gzipmode && fseek($file, 0, SEEK_END) == 0) || ($gzipmode && gzseek($file, 0) == 0)) {
|
||||
if (!$gzipmode)
|
||||
$filesize = ftell($file);
|
||||
else
|
||||
$filesize = gztell($file); // Always zero, ignore
|
||||
} else {
|
||||
echo ("<p class=\"error\">". JText::_('FILESIZEUNKNOWN') . $_REQUEST["fn"] . "</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
}
|
||||
|
||||
// *******************************************************************************************
|
||||
// START IMPORT SESSION HERE
|
||||
// *******************************************************************************************
|
||||
if (!$error && isset ($_REQUEST["start"]) && isset ($_REQUEST["foffset"]) && preg_match("#(\.(sql|gz|csv))$#i", $_REQUEST["fn"])) {
|
||||
|
||||
// Check start and foffset are numeric values
|
||||
|
||||
if (!is_numeric($_REQUEST["start"]) || !is_numeric($_REQUEST["foffset"])) {
|
||||
echo ("<p class=\"error\">". JText::_('NONNUMERICOFFSET') ."</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
$_REQUEST["start"] = floor($_REQUEST["start"]);
|
||||
$_REQUEST["foffset"] = floor($_REQUEST["foffset"]);
|
||||
}
|
||||
|
||||
// Check $_REQUEST["foffset"] upon $filesize (can't do it on gzipped files)
|
||||
|
||||
if (!$error && !$gzipmode && $_REQUEST["foffset"] > $filesize) {
|
||||
echo ("<p class=\"error\">".JText::_('POINTEREOF')."</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
|
||||
// Set file pointer to $_REQUEST["foffset"]
|
||||
|
||||
if (!$error && ((!$gzipmode && fseek($file, $_REQUEST["foffset"]) != 0) || ($gzipmode && gzseek($file, $_REQUEST["foffset"]) != 0))) {
|
||||
echo ("<p class=\"error\">". JText::_('UNABLETOSETOFFSET') . $_REQUEST["foffset"] . "</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
|
||||
// Start processing queries from $file
|
||||
|
||||
if (!$error) {
|
||||
$query = "";
|
||||
$queries = 0;
|
||||
$totalqueries = $_REQUEST["totalqueries"];
|
||||
$linenumber = $_REQUEST["start"];
|
||||
$querylines = 0;
|
||||
$inparents = false;
|
||||
|
||||
// Stay processing as long as the $linespersession is not reached or the query is still incomplete
|
||||
|
||||
while ($linenumber < $_REQUEST["start"] + $linespersession || $query != "") {
|
||||
|
||||
// Read the whole next line
|
||||
|
||||
$dumpline = "";
|
||||
while (!feof($file) && substr($dumpline, -1) != "\n") {
|
||||
if (!$gzipmode)
|
||||
$dumpline .= fgets($file, DATA_CHUNK_LENGTH);
|
||||
else
|
||||
$dumpline .= gzgets($file, DATA_CHUNK_LENGTH);
|
||||
}
|
||||
if ($dumpline === "")
|
||||
break;
|
||||
|
||||
// Handle DOS and Mac encoded linebreaks (I don't know if it will work on Win32 or Mac Servers)
|
||||
|
||||
$dumpline = str_replace("\r\n", "\n", $dumpline);
|
||||
$dumpline = str_replace("\r", "\n", $dumpline);
|
||||
|
||||
// DIAGNOSTIC
|
||||
// echo ("<p>Line $linenumber: $dumpline</p>\n");
|
||||
|
||||
// Skip comments and blank lines only if NOT in parents
|
||||
|
||||
if (!$inparents) {
|
||||
$skipline = false;
|
||||
reset($comment);
|
||||
foreach ($comment as $comment_value) {
|
||||
if (!$inparents && (trim($dumpline) == "" || strpos($dumpline, $comment_value) === 0)) {
|
||||
$skipline = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ($skipline) {
|
||||
$linenumber++;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// Remove double back-slashes from the dumpline prior to count the quotes ('\\' can only be within strings)
|
||||
|
||||
$dumpline_deslashed = str_replace("\\\\", "", $dumpline);
|
||||
|
||||
// Count ' and \' in the dumpline to avoid query break within a text field ending by ;
|
||||
// Please don't use double quotes ('"')to surround strings, it wont work
|
||||
|
||||
$parents = substr_count($dumpline_deslashed, "'") - substr_count($dumpline_deslashed, "\\'");
|
||||
if ($parents % 2 != 0)
|
||||
$inparents = !$inparents;
|
||||
|
||||
// Add the line to query
|
||||
|
||||
$query .= $dumpline;
|
||||
|
||||
// Don't count the line if in parents (text fields may include unlimited linebreaks)
|
||||
|
||||
if (!$inparents)
|
||||
$querylines++;
|
||||
|
||||
// Stop if query contains more lines as defined by MAX_QUERY_LINES
|
||||
|
||||
if ($querylines > MAX_QUERY_LINES) {
|
||||
echo ("<p class=\"error\">". JText::_('STOPPEDATLINE') ." $linenumber. </p>");
|
||||
echo ("<p>". JText::sprintf('TOOMANYLINES',MAX_QUERY_LINES)."</p>");
|
||||
$error = true;
|
||||
break;
|
||||
}
|
||||
$vars = $this->getVars();
|
||||
$DBtype = JArrayHelper::getValue($vars, 'DBtype', 'mysql');
|
||||
$DBhostname = JArrayHelper::getValue($vars, 'DBhostname', '');
|
||||
$DBuserName = JArrayHelper::getValue($vars, 'DBuserName', '');
|
||||
$DBpassword = JArrayHelper::getValue($vars, 'DBpassword', '');
|
||||
$DBname = JArrayHelper::getValue($vars, 'DBname', '');
|
||||
$DBPrefix = JArrayHelper::getValue($vars, 'DBPrefix', 'jos_');
|
||||
$DBOld = JArrayHelper::getValue($vars, 'DBOld', 'bu');
|
||||
//$migration = JArrayHelper::getValue($vars, 'migration', '0');
|
||||
$migration = JRequest::getVar( 'migration', 0, 'post', 'bool' );
|
||||
|
||||
$db = & JInstallationHelper::getDBO($DBtype, $DBhostname, $DBuserName, $DBpassword, $DBname, $DBPrefix);
|
||||
if(JError::isError($db)) jexit(JText::_('CONNECTION FAIL'));
|
||||
|
||||
// echo 'Done.<br />';
|
||||
// Execute query if end of query detected (; as last character) AND NOT in parents
|
||||
|
||||
if (ereg(";$", trim($dumpline)) && !$inparents) {
|
||||
if (!TESTMODE) {
|
||||
$db->setQuery(trim($query));
|
||||
// echo $query . '<br />';
|
||||
if (!$db->Query()) {
|
||||
echo ("<p class=\"error\">".JText::_('Error at the line') ." $linenumber: ". trim($dumpline) . "</p>\n");
|
||||
echo ("<p>".JText::_('Query:') . trim(nl2br(htmlentities($query))) ."</p>\n");
|
||||
echo ("<p>MySQL: " . mysql_error() . "</p>\n");
|
||||
$error = true;
|
||||
break;
|
||||
}
|
||||
$totalqueries++;
|
||||
$queries++;
|
||||
$query = "";
|
||||
$querylines = 0;
|
||||
}
|
||||
}
|
||||
$linenumber++;
|
||||
}
|
||||
}
|
||||
|
||||
// Get the current file position
|
||||
|
||||
if (!$error) {
|
||||
if (!$gzipmode)
|
||||
$foffset = ftell($file);
|
||||
else
|
||||
$foffset = gztell($file);
|
||||
if (!$foffset) {
|
||||
echo ("<p class=\"error\">".JText::_('CANTREADPOINTER')."</p>\n");
|
||||
$error = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Print statistics
|
||||
|
||||
// echo ("<p class=\"centr\"><b>Statistics</b></p>\n");
|
||||
|
||||
if (!$error) {
|
||||
$lines_this = $linenumber - $_REQUEST["start"];
|
||||
$lines_done = $linenumber -1;
|
||||
$lines_togo = ' ? ';
|
||||
$lines_tota = ' ? ';
|
||||
|
||||
$queries_this = $queries;
|
||||
$queries_done = $totalqueries;
|
||||
$queries_togo = ' ? ';
|
||||
$queries_tota = ' ? ';
|
||||
|
||||
$bytes_this = $foffset - $_REQUEST["foffset"];
|
||||
$bytes_done = $foffset;
|
||||
$kbytes_this = round($bytes_this / 1024, 2);
|
||||
$kbytes_done = round($bytes_done / 1024, 2);
|
||||
$mbytes_this = round($kbytes_this / 1024, 2);
|
||||
$mbytes_done = round($kbytes_done / 1024, 2);
|
||||
|
||||
if (!$gzipmode) {
|
||||
$bytes_togo = $filesize - $foffset;
|
||||
$bytes_tota = $filesize;
|
||||
$kbytes_togo = round($bytes_togo / 1024, 2);
|
||||
$kbytes_tota = round($bytes_tota / 1024, 2);
|
||||
$mbytes_togo = round($kbytes_togo / 1024, 2);
|
||||
$mbytes_tota = round($kbytes_tota / 1024, 2);
|
||||
|
||||
$pct_this = ceil($bytes_this / $filesize * 100);
|
||||
$pct_done = ceil($foffset / $filesize * 100);
|
||||
$pct_togo = 100 - $pct_done;
|
||||
$pct_tota = 100;
|
||||
|
||||
if ($bytes_togo == 0) {
|
||||
$lines_togo = '0';
|
||||
$lines_tota = $linenumber -1;
|
||||
$queries_togo = '0';
|
||||
$queries_tota = $totalqueries;
|
||||
}
|
||||
|
||||
$pct_bar = "<div style=\"height:15px;width:$pct_done%;background-color:#000080;margin:0px;\"></div>";
|
||||
} else {
|
||||
$bytes_togo = ' ? ';
|
||||
$bytes_tota = ' ? ';
|
||||
$kbytes_togo = ' ? ';
|
||||
$kbytes_tota = ' ? ';
|
||||
$mbytes_togo = ' ? ';
|
||||
$mbytes_tota = ' ? ';
|
||||
|
||||
$pct_this = ' ? ';
|
||||
$pct_done = ' ? ';
|
||||
$pct_togo = ' ? ';
|
||||
$pct_tota = 100;
|
||||
$pct_bar = str_replace(' ', ' ', '<tt>[ Not available for gzipped files ]</tt>');
|
||||
}
|
||||
/*
|
||||
echo ("
|
||||
<center>
|
||||
<table width=\"520\" border=\"0\" cellpadding=\"3\" cellspacing=\"1\">
|
||||
<tr><th class=\"bg4\"> </th><th class=\"bg4\">Session</th><th class=\"bg4\">Done</th><th class=\"bg4\">To go</th><th class=\"bg4\">Total</th></tr>
|
||||
<tr><th class=\"bg4\">Lines</th><td class=\"bg3\">$lines_this</td><td class=\"bg3\">$lines_done</td><td class=\"bg3\">$lines_togo</td><td class=\"bg3\">$lines_tota</td></tr>
|
||||
<tr><th class=\"bg4\">Queries</th><td class=\"bg3\">$queries_this</td><td class=\"bg3\">$queries_done</td><td class=\"bg3\">$queries_togo</td><td class=\"bg3\">$queries_tota</td></tr>
|
||||
<tr><th class=\"bg4\">Bytes</th><td class=\"bg3\">$bytes_this</td><td class=\"bg3\">$bytes_done</td><td class=\"bg3\">$bytes_togo</td><td class=\"bg3\">$bytes_tota</td></tr>
|
||||
<tr><th class=\"bg4\">KB</th><td class=\"bg3\">$kbytes_this</td><td class=\"bg3\">$kbytes_done</td><td class=\"bg3\">$kbytes_togo</td><td class=\"bg3\">$kbytes_tota</td></tr>
|
||||
<tr><th class=\"bg4\">MB</th><td class=\"bg3\">$mbytes_this</td><td class=\"bg3\">$mbytes_done</td><td class=\"bg3\">$mbytes_togo</td><td class=\"bg3\">$mbytes_tota</td></tr>
|
||||
<tr><th class=\"bg4\">%</th><td class=\"bg3\">$pct_this</td><td class=\"bg3\">$pct_done</td><td class=\"bg3\">$pct_togo</td><td class=\"bg3\">$pct_tota</td></tr>
|
||||
<tr><th class=\"bg4\">% bar</th><td class=\"bgpctbar\" colspan=\"4\">$pct_bar</td></tr>
|
||||
</table>
|
||||
</center>
|
||||
\n");*/
|
||||
|
||||
// Finish message and restart the script
|
||||
|
||||
if ($linenumber < $_REQUEST["start"] + $linespersession) {
|
||||
echo ("<div id=\"installer\"><p class=\"successcentr\">".JText::_('CONGRATSEOF')."</p>\n");
|
||||
// Do migration
|
||||
if($migration) {
|
||||
?><br />Migration will continue shortly...</div>
|
||||
<form action="index.php" method="post" name="migrateForm" id="migrateForm" class="form-validate" target="migrationtarget">
|
||||
<input type="hidden" name="task" value="postmigrate" />
|
||||
<input type="hidden" name="migration" value="<?php echo $migration ?>" />
|
||||
<input type="hidden" name="loadchecked" value="1" />
|
||||
<input type="hidden" name="dataLoaded" value="1" />
|
||||
<input type="hidden" name="DBtype" value="<?php echo $DBtype ?>" />
|
||||
<input type="hidden" name="DBhostname" value="<?php echo $DBhostname ?>" />
|
||||
<input type="hidden" name="DBuserName" value="<?php echo $DBuserName ?>" />
|
||||
<input type="hidden" name="DBpassword" value="<?php echo $DBpassword ?>" />
|
||||
<input type="hidden" name="DBname" value="<?php echo $DBname ?>" />
|
||||
<input type="hidden" name="DBPrefix" value="<?php echo $DBPrefix ?>" />
|
||||
</form>
|
||||
<script language="JavaScript" type="text/javascript">window.setTimeout('submitForm(this.document.migrateForm,"postmigrate")',500);</script>
|
||||
<?php
|
||||
} else echo '<br />'. JText::_('FINALIZEINSTALL').'</div>';
|
||||
//echo ("<p class=\"centr\">Thank you for using this tool! Please rate <a href=\"http://www.hotscripts.com/Detailed/20922.html\" target=\"_blank\">Bigdump at Hotscripts.com</a></p>\n");
|
||||
//echo ("<p class=\"centr\">You can send me some bucks or euros as appreciation <a href=\"http://www.ozerov.de/bigdump.php\" target=\"_blank\">via PayPal</a></p>\n");
|
||||
$error = true;
|
||||
} else {
|
||||
if ($delaypersession != 0)
|
||||
echo ("<p class=\"centr\">".JText::sprintf('DELAYMSG',$delaypersession)."</p>\n");
|
||||
?><script language="JavaScript" type="text/javascript">window.setTimeout('submitForm(this.document.migrateForm,"dumpLoad")',500);</script>
|
||||
<div id="installer"><p><?php echo JText::_('LOADSQLFILE') ?></p></div>
|
||||
|
||||
<form action="index.php" method="post" name="migrateForm" id="migrateForm" class="form-validate" target="migrationtarget">
|
||||
<input type="hidden" name="task" value="dumpLoad" />
|
||||
<input type="hidden" name="migration" value="<?php echo $migration ?>" />
|
||||
<input type="hidden" name="loadchecked" value="1" />
|
||||
<input type="hidden" name="dataLoaded" value="1" />
|
||||
<input type="hidden" name="DBtype" value="<?php echo $DBtype ?>" />
|
||||
<input type="hidden" name="DBhostname" value="<?php echo $DBhostname ?>" />
|
||||
<input type="hidden" name="DBuserName" value="<?php echo $DBuserName ?>" />
|
||||
<input type="hidden" name="DBpassword" value="<?php echo $DBpassword ?>" />
|
||||
<input type="hidden" name="DBname" value="<?php echo $DBname ?>" />
|
||||
<input type="hidden" name="DBPrefix" value="<?php echo $DBPrefix ?>" />
|
||||
<input type="hidden" name="start" value="<?php echo $linenumber ?>" />
|
||||
<input type="hidden" name="foffset" value="<?php echo $foffset ?>" />
|
||||
<input type="hidden" name="totalqueries" value="<?php echo $totalqueries ?>" />
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
} else
|
||||
echo ("<p class=\"error\">".JText::_('STOPPEDONERROR')."</p>\n");
|
||||
|
||||
}
|
||||
|
||||
//if ($dbconnection) mysql_close();
|
||||
if ($file && !$gzipmode)
|
||||
fclose($file);
|
||||
else
|
||||
if ($file && $gzipmode)
|
||||
gzclose($file);
|
||||
|
||||
//ob_flush();
|
||||
//die();
|
||||
|
||||
31
www/-installation-/includes/defines.php
Normal file
@ -0,0 +1,31 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: defines.php 10381 2008-06-01 03:35:53Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
|
||||
//Joomla framework path definitions
|
||||
$parts = explode( DS, JPATH_BASE );
|
||||
array_pop( $parts );
|
||||
|
||||
define( 'JPATH_ROOT', implode( DS, $parts ) );
|
||||
define( 'JPATH_SITE', JPATH_ROOT );
|
||||
define( 'JPATH_CONFIGURATION', JPATH_ROOT );
|
||||
define( 'JPATH_ADMINISTRATOR', JPATH_ROOT.DS.'administrator' );
|
||||
define( 'JPATH_XMLRPC', JPATH_ROOT.DS.'xmlrpc' );
|
||||
define( 'JPATH_LIBRARIES', JPATH_ROOT.DS.'libraries' );
|
||||
define( 'JPATH_PLUGINS', JPATH_ROOT.DS.'plugins' );
|
||||
define( 'JPATH_INSTALLATION', JPATH_ROOT.DS.'installation' );
|
||||
define( 'JPATH_THEMES', JPATH_BASE );
|
||||
define( 'JPATH_CACHE', JPATH_ROOT.DS.'cache' );
|
||||
60
www/-installation-/includes/framework.php
Normal file
@ -0,0 +1,60 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: framework.php 10382 2008-06-01 06:56:02Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
|
||||
/*
|
||||
* Joomla! system checks
|
||||
*/
|
||||
|
||||
error_reporting( E_ALL );
|
||||
@set_magic_quotes_runtime( 0 );
|
||||
@ini_set('zend.ze1_compatibility_mode', '0');
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
if (file_exists( JPATH_CONFIGURATION . DS . 'configuration.php' ) && (filesize( JPATH_CONFIGURATION . DS . 'configuration.php' ) > 10) && !file_exists( JPATH_INSTALLATION . DS . 'index.php' )) {
|
||||
header( 'Location: ../index.php' );
|
||||
exit();
|
||||
}
|
||||
|
||||
/*
|
||||
* Joomla! system startup
|
||||
*/
|
||||
|
||||
// System includes
|
||||
require_once( JPATH_LIBRARIES .DS.'joomla'.DS.'import.php');
|
||||
|
||||
// Installation file includes
|
||||
define( 'JPATH_INCLUDES', dirname(__FILE__) );
|
||||
|
||||
/*
|
||||
* Joomla! framework loading
|
||||
*/
|
||||
|
||||
// Include object abstract class
|
||||
require_once(JPATH_SITE.DS.'libraries'.DS.'joomla'.DS.'utilities'.DS.'compat'.DS.'compat.php');
|
||||
|
||||
// Joomla! library imports
|
||||
jimport( 'joomla.database.table' );
|
||||
jimport( 'joomla.user.user');
|
||||
jimport( 'joomla.environment.uri' );
|
||||
jimport( 'joomla.user.user');
|
||||
jimport( 'joomla.html.parameter' );
|
||||
jimport( 'joomla.utilities.utility' );
|
||||
jimport( 'joomla.language.language');
|
||||
jimport( 'joomla.utilities.string' );
|
||||
?>
|
||||
1
www/-installation-/includes/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
1
www/-installation-/includes/js/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
22
www/-installation-/includes/js/installation.js
Normal file
@ -0,0 +1,22 @@
|
||||
/*** @version $Id: install.js 966 2005-11-11 01:37:07Z Jinx $* @package Joomla* @subpackage Installation* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.* @license GNU/GPL*/
|
||||
/**
|
||||
* @param object A form element
|
||||
* @param string The name of the element to find
|
||||
*/
|
||||
function getElementByName( f, name ) {
|
||||
if (f.elements) {
|
||||
for (i=0, n=f.elements.length; i < n; i++) {
|
||||
if (f.elements[i].name == name) {
|
||||
return f.elements[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
/**
|
||||
* Generic submit form
|
||||
*/
|
||||
function submitForm( frm, task ) {
|
||||
frm.task.value = task;
|
||||
frm.submit();
|
||||
}
|
||||
551
www/-installation-/includes/js/xajax.js
Normal file
@ -0,0 +1,551 @@
|
||||
function Xajax()
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage = function(text) { alert("Xajax Debug:\n " + text) };
|
||||
|
||||
this.workId = 'xajaxWork'+ new Date().getTime();
|
||||
this.depth = 0;
|
||||
|
||||
//Get the XMLHttpRequest Object
|
||||
this.getRequestObject = function()
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage("Initializing Request Object..");
|
||||
var req;
|
||||
try
|
||||
{
|
||||
req=new ActiveXObject("Msxml2.XMLHTTP");
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
try
|
||||
{
|
||||
req=new ActiveXObject("Microsoft.XMLHTTP");
|
||||
}
|
||||
catch (e2)
|
||||
{
|
||||
req=null;
|
||||
}
|
||||
}
|
||||
if(!req && typeof XMLHttpRequest != "undefined")
|
||||
req = new XMLHttpRequest();
|
||||
|
||||
if (xajaxDebug) {
|
||||
if (!req) this.DebugMessage("Request Object Instantiation failed.");
|
||||
}
|
||||
|
||||
return req;
|
||||
}
|
||||
|
||||
// xajax.$() is shorthand for document.getElementById()
|
||||
this.$ = function(sId)
|
||||
{
|
||||
if (!sId) {
|
||||
return null;
|
||||
}
|
||||
var returnObj = document.getElementById(sId);
|
||||
if (xajaxDebug && !returnObj && sId != this.workId) {
|
||||
this.DebugMessage("Element with the id \"" + sId + "\" not found.");
|
||||
}
|
||||
return returnObj;
|
||||
}
|
||||
|
||||
// xajax.include(sFileName) dynamically includes an external javascript file
|
||||
this.include = function(sFileName)
|
||||
{
|
||||
var objHead = document.getElementsByTagName('head');
|
||||
var objScript = document.createElement('script');
|
||||
objScript.type = 'text/javascript';
|
||||
objScript.src = sFileName;
|
||||
objHead[0].appendChild(objScript);
|
||||
}
|
||||
|
||||
// xajax.addHandler adds an event handler to an element
|
||||
this.addHandler = function(sElementId, sEvent, sFunctionName)
|
||||
{
|
||||
if (window.addEventListener)
|
||||
{
|
||||
eval("this.$('"+sElementId+"').addEventListener('"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
else
|
||||
{
|
||||
eval("this.$('"+sElementId+"').attachEvent('on"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.removeHandler removes an event handler from an element
|
||||
this.removeHandler = function(sElementId, sEvent, sFunctionName)
|
||||
{
|
||||
if (window.addEventListener)
|
||||
{
|
||||
eval("this.$('"+sElementId+"').removeEventListener('"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
else
|
||||
{
|
||||
eval("this.$('"+sElementId+"').detachEvent('on"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.create creates a new child node under a parent
|
||||
this.create = function(sParentId, sTag, sId)
|
||||
{
|
||||
var objParent = this.$(sParentId);
|
||||
objElement = document.createElement(sTag);
|
||||
objElement.setAttribute('id',sId);
|
||||
objParent.appendChild(objElement);
|
||||
}
|
||||
|
||||
// xajax.insert inserts a new node before another node
|
||||
this.insert = function(sBeforeId, sTag, sId)
|
||||
{
|
||||
var objSibling = this.$(sBeforeId);
|
||||
objElement = document.createElement(sTag);
|
||||
objElement.setAttribute('id',sId);
|
||||
objSibling.parentNode.insertBefore(objElement, objSibling);
|
||||
}
|
||||
|
||||
this.getInput = function(sType, sName, sId)
|
||||
{
|
||||
var Obj;
|
||||
if (sType == "radio" && !window.addEventListener)
|
||||
{
|
||||
Obj = document.createElement('<input type="radio" id="'+sId+'" name="'+sName+'">');
|
||||
}
|
||||
else
|
||||
{
|
||||
Obj = document.createElement('input');
|
||||
Obj.setAttribute('type',sType);
|
||||
Obj.setAttribute('name',sName);
|
||||
Obj.setAttribute('id',sId);
|
||||
}
|
||||
return Obj;
|
||||
}
|
||||
|
||||
// xajax.createInput creates a new input node under a parent
|
||||
this.createInput = function(sParentId, sType, sName, sId)
|
||||
{
|
||||
var objParent = this.$(sParentId);
|
||||
var objElement = this.getInput(sType, sName, sId);
|
||||
objParent.appendChild(objElement);
|
||||
}
|
||||
|
||||
// xajax.insertInput creates a new input node before another node
|
||||
this.insertInput = function(sBeforeId, sType, sName, sId)
|
||||
{
|
||||
var objSibling = this.$(sBeforeId);
|
||||
var objElement = this.getInput(sType, sName, sId);
|
||||
objSibling.parentNode.insertBefore(objElement, objSibling);
|
||||
}
|
||||
|
||||
// xajax.remove deletes an element
|
||||
this.remove = function(sId)
|
||||
{
|
||||
objElement = this.$(sId);
|
||||
if (objElement.parentNode && objElement.parentNode.removeChild)
|
||||
{
|
||||
objElement.parentNode.removeChild(objElement);
|
||||
}
|
||||
}
|
||||
|
||||
//xajax.replace searches for text in an attribute of an element and replaces it
|
||||
//with a different text
|
||||
this.replace = function(sId,sAttribute,sSearch,sReplace)
|
||||
{
|
||||
var bFunction = false;
|
||||
|
||||
if (sAttribute == "innerHTML")
|
||||
sSearch = this.getBrowserHTML(sSearch);
|
||||
|
||||
eval("var txt=document.getElementById('"+sId+"')."+sAttribute);
|
||||
if (typeof txt == "function")
|
||||
{
|
||||
txt = txt.toString();
|
||||
bFunction = true;
|
||||
}
|
||||
if (txt.indexOf(sSearch)>-1)
|
||||
{
|
||||
var newTxt = '';
|
||||
while (txt.indexOf(sSearch) > -1)
|
||||
{
|
||||
x = txt.indexOf(sSearch)+sSearch.length+1;
|
||||
newTxt += txt.substr(0,x).replace(sSearch,sReplace);
|
||||
txt = txt.substr(x,txt.length-x);
|
||||
}
|
||||
newTxt += txt;
|
||||
if (bFunction)
|
||||
{
|
||||
eval("newTxt =" + newTxt);
|
||||
eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');
|
||||
}
|
||||
else if (this.willChange(sId,sAttribute,newTxt))
|
||||
{
|
||||
eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.getFormValues() builds a query string XML message from the elements of a form object
|
||||
this.getFormValues = function(frm)
|
||||
{
|
||||
var objForm;
|
||||
var submitDisabledElements = false;
|
||||
if (arguments.length > 1 && arguments[1] == true)
|
||||
submitDisabledElements = true;
|
||||
|
||||
if (typeof(frm) == "string")
|
||||
objForm = this.$(frm);
|
||||
else
|
||||
objForm = frm;
|
||||
var sXml = "<xjxquery><q>";
|
||||
if (objForm && objForm.tagName == 'FORM')
|
||||
{
|
||||
var formElements = objForm.elements;
|
||||
for( var i=0; i < formElements.length; i++)
|
||||
{
|
||||
if (formElements[i].type && (formElements[i].type == 'radio' || formElements[i].type == 'checkbox') && formElements[i].checked == false)
|
||||
continue;
|
||||
if (formElements[i].disabled && formElements[i].disabled == true && submitDisabledElements == false) continue;
|
||||
var name = formElements[i].name;
|
||||
if (name)
|
||||
{
|
||||
if (sXml != '<xjxquery><q>')
|
||||
sXml += '&';
|
||||
if(formElements[i].type=='select-multiple')
|
||||
{
|
||||
for (var j = 0; j < formElements[i].length; j++)
|
||||
{
|
||||
if (formElements[i].options[j].selected == true) sXml += name+"="+encodeURIComponent(formElements[i].options[j].value)+"&";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sXml += name+"="+encodeURIComponent(formElements[i].value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sXml +="</q></xjxquery>";
|
||||
|
||||
return sXml;
|
||||
}
|
||||
|
||||
// Generates an XML message that xajax can understand from a javascript object
|
||||
this.objectToXML = function(obj)
|
||||
{
|
||||
var sXml = "<xjxobj>";
|
||||
for (i in obj)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (i == 'constructor')
|
||||
continue;
|
||||
if (obj[i] && typeof(obj[i]) == 'function')
|
||||
continue;
|
||||
|
||||
var key = i;
|
||||
var value = obj[i];
|
||||
if (value && typeof(value)=="object" &&
|
||||
(value.constructor == Array
|
||||
) && this.depth <= 50)
|
||||
{
|
||||
this.depth++;
|
||||
value = this.objectToXML(value);
|
||||
this.depth--;
|
||||
}
|
||||
|
||||
sXml += "<e><k>"+key+"</k><v>"+value+"</v></e>";
|
||||
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage(e);
|
||||
}
|
||||
}
|
||||
sXml += "</xjxobj>";
|
||||
|
||||
return sXml;
|
||||
}
|
||||
|
||||
// Sends a XMLHttpRequest to call the specified PHP function on the server
|
||||
// * sRequestType is optional -- defaults to POST
|
||||
this.call = function(sFunction, aArgs, sRequestType)
|
||||
{
|
||||
var i,r,postData;
|
||||
if (document.body && xajaxWaitCursor)
|
||||
document.body.style.cursor = 'wait';
|
||||
if (xajaxStatusMessages == true) window.status = 'Sending Request...';
|
||||
if (xajaxDebug) this.DebugMessage("Starting xajax...");
|
||||
if (sRequestType == null) {
|
||||
var xajaxRequestType = xajaxDefinedPost;
|
||||
}
|
||||
else {
|
||||
var xajaxRequestType = sRequestType;
|
||||
}
|
||||
var uri = xajaxRequestUri;
|
||||
var value;
|
||||
switch(xajaxRequestType)
|
||||
{
|
||||
case xajaxDefinedGet:{
|
||||
var uriGet = uri.indexOf("?")==-1?"?xajax="+encodeURIComponent(sFunction):"&xajax="+encodeURIComponent(sFunction);
|
||||
if (aArgs) {
|
||||
for (i = 0; i<aArgs.length; i++)
|
||||
{
|
||||
value = aArgs[i];
|
||||
if (typeof(value)=="object")
|
||||
value = this.objectToXML(value);
|
||||
uriGet += "&xajaxargs[]="+encodeURIComponent(value);
|
||||
}
|
||||
}
|
||||
uriGet += "&xajaxr=" + new Date().getTime();
|
||||
uri += uriGet;
|
||||
postData = null;
|
||||
} break;
|
||||
case xajaxDefinedPost:{
|
||||
postData = "xajax="+encodeURIComponent(sFunction);
|
||||
postData += "&xajaxr="+new Date().getTime();
|
||||
if (aArgs) {
|
||||
for (i = 0; i <aArgs.length; i++)
|
||||
{
|
||||
value = aArgs[i];
|
||||
if (typeof(value)=="object")
|
||||
value = this.objectToXML(value);
|
||||
postData = postData+"&xajaxargs[]="+encodeURIComponent(value);
|
||||
}
|
||||
}
|
||||
} break;
|
||||
default:
|
||||
alert("Illegal request type: " + xajaxRequestType); return false; break;
|
||||
}
|
||||
r = this.getRequestObject();
|
||||
if (!r) return false;
|
||||
r.open(xajaxRequestType==xajaxDefinedGet?"GET":"POST", uri, true);
|
||||
if (xajaxRequestType == xajaxDefinedPost)
|
||||
{
|
||||
try
|
||||
{
|
||||
r.setRequestHeader("Method", "POST " + uri + " HTTP/1.5");
|
||||
r.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert("Your browser does not appear to support asynchronous requests using POST.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
r.onreadystatechange = function()
|
||||
{
|
||||
if (r.readyState != 4)
|
||||
return;
|
||||
|
||||
if (r.status==200)
|
||||
{
|
||||
if (xajaxDebug && r.responseText.length < 1000) xajax.DebugMessage("Received:\n" + r.responseText);
|
||||
else if (xajaxDebug) xajax.DebugMessage("Received:\n" + r.responseText.substr(0,1000)+"...\n[long response]\n...</xajax>");
|
||||
if (r.responseXML)
|
||||
xajax.processResponse(r.responseXML);
|
||||
else {
|
||||
alert("Error: the XML response that was returned from the server is invalid.");
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'Invalid XML response error';
|
||||
}
|
||||
}
|
||||
|
||||
delete r;
|
||||
}
|
||||
if (xajaxDebug) this.DebugMessage("Calling "+sFunction +" uri="+uri+" (post:"+ postData +")");
|
||||
r.send(postData);
|
||||
if (xajaxStatusMessages == true) window.status = 'Waiting for data...';
|
||||
delete r;
|
||||
return true;
|
||||
}
|
||||
|
||||
//Gets the text as it would be if it were being retrieved from
|
||||
//the innerHTML property in the current browser
|
||||
this.getBrowserHTML = function(html)
|
||||
{
|
||||
tmpXajax = this.$(this.workId);
|
||||
if (tmpXajax == null)
|
||||
{
|
||||
tmpXajax = document.createElement("div");
|
||||
tmpXajax.setAttribute('id',this.workId);
|
||||
tmpXajax.style.display = "none";
|
||||
tmpXajax.style.visibility = "hidden";
|
||||
document.body.appendChild(tmpXajax);
|
||||
}
|
||||
tmpXajax.innerHTML = html;
|
||||
var browserHTML = tmpXajax.innerHTML;
|
||||
tmpXajax.innerHTML = '';
|
||||
|
||||
return browserHTML;
|
||||
}
|
||||
|
||||
// Tests if the new Data is the same as the extant data
|
||||
this.willChange = function(element, attribute, newData)
|
||||
{
|
||||
if (!document.body)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
var oldData;
|
||||
if (attribute == "innerHTML")
|
||||
{
|
||||
newData = this.getBrowserHTML(newData);
|
||||
}
|
||||
eval("oldData=document.getElementById('"+element+"')."+attribute);
|
||||
if (newData != oldData)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
//Process XML xajaxResponses returned from the request
|
||||
this.processResponse = function(xml)
|
||||
{
|
||||
if (xajaxStatusMessages == true) window.status = 'Processing...';
|
||||
var tmpXajax = null;
|
||||
xml = xml.documentElement;
|
||||
if (xml == null) {
|
||||
alert("Error: the XML response that was returned from the server cannot be processed.");
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'XML response processing error';
|
||||
return;
|
||||
}
|
||||
for (i=0; i<xml.childNodes.length; i++)
|
||||
{
|
||||
if (xml.childNodes[i].nodeName == "cmd")
|
||||
{
|
||||
var cmd;
|
||||
var id;
|
||||
var property;
|
||||
var data;
|
||||
var search;
|
||||
var type;
|
||||
var before;
|
||||
|
||||
for (j=0; j<xml.childNodes[i].attributes.length; j++)
|
||||
{
|
||||
if (xml.childNodes[i].attributes[j].name == "n")
|
||||
{
|
||||
cmd = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "t")
|
||||
{
|
||||
id = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "p")
|
||||
{
|
||||
property = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "c")
|
||||
{
|
||||
type = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
}
|
||||
if (xml.childNodes[i].childNodes.length > 1)
|
||||
{
|
||||
for (j=0; j<xml.childNodes[i].childNodes.length; j++)
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].nodeName == "s")
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].firstChild)
|
||||
search = xml.childNodes[i].childNodes[j].firstChild.nodeValue;
|
||||
}
|
||||
if (xml.childNodes[i].childNodes[j].nodeName == "r")
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].firstChild)
|
||||
data = xml.childNodes[i].childNodes[j].firstChild.data;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (xml.childNodes[i].firstChild)
|
||||
data = xml.childNodes[i].firstChild.nodeValue;
|
||||
else
|
||||
data = "";
|
||||
|
||||
var objElement = this.$(id);
|
||||
try
|
||||
{
|
||||
if (cmd=="al")
|
||||
{
|
||||
alert(data);
|
||||
}
|
||||
if (cmd=="js")
|
||||
{
|
||||
eval(data);
|
||||
}
|
||||
if (cmd=="in")
|
||||
{
|
||||
this.include(data);
|
||||
}
|
||||
if (cmd=="as")
|
||||
{
|
||||
if (this.willChange(id,property,data))
|
||||
{
|
||||
eval("objElement."+property+"=data;");
|
||||
}
|
||||
}
|
||||
if (cmd=="ap")
|
||||
{
|
||||
eval("objElement."+property+"+=data;");
|
||||
}
|
||||
if (cmd=="pp")
|
||||
{
|
||||
eval("objElement."+property+"=data+objElement."+property);
|
||||
}
|
||||
if (cmd=="rp")
|
||||
{
|
||||
this.replace(id,property,search,data)
|
||||
}
|
||||
if (cmd=="rm")
|
||||
{
|
||||
this.remove(id);
|
||||
}
|
||||
if (cmd=="ce")
|
||||
{
|
||||
this.create(id,data,property);
|
||||
}
|
||||
if (cmd=="ie")
|
||||
{
|
||||
this.insert(id,data,property);
|
||||
}
|
||||
if (cmd=="ci")
|
||||
{
|
||||
this.createInput(id,type,data,property);
|
||||
}
|
||||
if (cmd=="ii")
|
||||
{
|
||||
this.insertInput(id,type,data,property);
|
||||
}
|
||||
if (cmd=="ev")
|
||||
{
|
||||
eval("this.$('"+id+"')."+property+"= function(){"+data+";}");
|
||||
}
|
||||
if (cmd=="ah")
|
||||
{
|
||||
this.addHandler(id, property, data);
|
||||
}
|
||||
if (cmd=="rh")
|
||||
{
|
||||
this.removeHandler(id, property, data);
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert(e);
|
||||
}
|
||||
delete objElement;
|
||||
delete cmd;
|
||||
delete id;
|
||||
delete property;
|
||||
delete search;
|
||||
delete data;
|
||||
delete type;
|
||||
delete before;
|
||||
}
|
||||
}
|
||||
delete xml;
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'Done';
|
||||
}
|
||||
}
|
||||
|
||||
var xajax = new Xajax();
|
||||
144
www/-installation-/includes/js/xajaxCompress.php
Normal file
@ -0,0 +1,144 @@
|
||||
<?php
|
||||
// xajaxCompressJavascript() compresses the javascript code for more efficient delivery
|
||||
// used internally
|
||||
// $sJS is a string containing the javascript code to compress
|
||||
function xajaxCompressJavascript($sJS)
|
||||
{
|
||||
//remove windows cariage returns
|
||||
$sJS = str_replace("\r","",$sJS);
|
||||
|
||||
//array to store replaced literal strings
|
||||
$literal_strings = array();
|
||||
|
||||
//explode the string into lines
|
||||
$lines = explode("\n",$sJS);
|
||||
//loop through all the lines, building a new string at the same time as removing literal strings
|
||||
$clean = "";
|
||||
$inComment = false;
|
||||
$literal = "";
|
||||
$inQuote = false;
|
||||
$escaped = false;
|
||||
$quoteChar = "";
|
||||
|
||||
for($i=0;$i<count($lines);$i++)
|
||||
{
|
||||
$line = $lines[$i];
|
||||
$inNormalComment = false;
|
||||
|
||||
//loop through line's characters and take out any literal strings, replace them with ___i___ where i is the index of this string
|
||||
for($j=0;$j<strlen($line);$j++)
|
||||
{
|
||||
$c = substr($line,$j,1);
|
||||
$d = substr($line,$j,2);
|
||||
|
||||
//look for start of quote
|
||||
if(!$inQuote && !$inComment)
|
||||
{
|
||||
//is this character a quote or a comment
|
||||
if(($c=="\"" || $c=="'") && !$inComment && !$inNormalComment)
|
||||
{
|
||||
$inQuote = true;
|
||||
$inComment = false;
|
||||
$escaped = false;
|
||||
$quoteChar = $c;
|
||||
$literal = $c;
|
||||
}
|
||||
else if($d=="/*" && !$inNormalComment)
|
||||
{
|
||||
$inQuote = false;
|
||||
$inComment = true;
|
||||
$escaped = false;
|
||||
$quoteChar = $d;
|
||||
$literal = $d;
|
||||
$j++;
|
||||
}
|
||||
else if($d=="//") //ignore string markers that are found inside comments
|
||||
{
|
||||
$inNormalComment = true;
|
||||
$clean .= $c;
|
||||
}
|
||||
else
|
||||
{
|
||||
$clean .= $c;
|
||||
}
|
||||
}
|
||||
else //allready in a string so find end quote
|
||||
{
|
||||
if($c == $quoteChar && !$escaped && !$inComment)
|
||||
{
|
||||
$inQuote = false;
|
||||
$literal .= $c;
|
||||
|
||||
//subsitute in a marker for the string
|
||||
$clean .= "___" . count($literal_strings) . "___";
|
||||
|
||||
//push the string onto our array
|
||||
array_push($literal_strings,$literal);
|
||||
|
||||
}
|
||||
else if($inComment && $d=="*/")
|
||||
{
|
||||
$inComment = false;
|
||||
$literal .= $d;
|
||||
|
||||
//subsitute in a marker for the string
|
||||
$clean .= "___" . count($literal_strings) . "___";
|
||||
|
||||
//push the string onto our array
|
||||
array_push($literal_strings,$literal);
|
||||
|
||||
$j++;
|
||||
}
|
||||
else if($c == "\\" && !$escaped)
|
||||
$escaped = true;
|
||||
else
|
||||
$escaped = false;
|
||||
|
||||
$literal .= $c;
|
||||
}
|
||||
}
|
||||
if($inComment) $literal .= "\n";
|
||||
$clean .= "\n";
|
||||
}
|
||||
//explode the clean string into lines again
|
||||
$lines = explode("\n",$clean);
|
||||
|
||||
//now process each line at a time
|
||||
for($i=0;$i<count($lines);$i++)
|
||||
{
|
||||
$line = $lines[$i];
|
||||
|
||||
//remove comments
|
||||
$line = preg_replace("/\/\/(.*)/","",$line);
|
||||
|
||||
//strip leading and trailing whitespace
|
||||
$line = trim($line);
|
||||
|
||||
//remove all whitespace with a single space
|
||||
$line = preg_replace("/\s+/"," ",$line);
|
||||
|
||||
//remove any whitespace that occurs after/before an operator
|
||||
$line = preg_replace("/\s*([!\}\{;,&=\|\-\+\*\/\)\(:])\s*/","\\1",$line);
|
||||
|
||||
$lines[$i] = $line;
|
||||
}
|
||||
|
||||
//implode the lines
|
||||
$sJS = implode("\n",$lines);
|
||||
|
||||
//make sure there is a max of 1 \n after each line
|
||||
$sJS = preg_replace("/[\n]+/","\n",$sJS);
|
||||
|
||||
//strip out line breaks that immediately follow a semi-colon
|
||||
$sJS = preg_replace("/;\n/",";",$sJS);
|
||||
|
||||
//curly brackets aren't on their own
|
||||
$sJS = preg_replace("/[\n]*\{[\n]*/","{",$sJS);
|
||||
|
||||
//finally loop through and replace all the literal strings:
|
||||
for($i=0;$i<count($literal_strings);$i++)
|
||||
$sJS = str_replace("___".$i."___",$literal_strings[$i],$sJS);
|
||||
|
||||
return $sJS;
|
||||
}
|
||||
?>
|
||||
551
www/-installation-/includes/js/xajax_uncompressed.js
Normal file
@ -0,0 +1,551 @@
|
||||
function Xajax()
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage = function(text) { alert("Xajax Debug:\n " + text) };
|
||||
|
||||
this.workId = 'xajaxWork'+ new Date().getTime();
|
||||
this.depth = 0;
|
||||
|
||||
//Get the XMLHttpRequest Object
|
||||
this.getRequestObject = function()
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage("Initializing Request Object..");
|
||||
var req;
|
||||
try
|
||||
{
|
||||
req=new ActiveXObject("Msxml2.XMLHTTP");
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
try
|
||||
{
|
||||
req=new ActiveXObject("Microsoft.XMLHTTP");
|
||||
}
|
||||
catch (e2)
|
||||
{
|
||||
req=null;
|
||||
}
|
||||
}
|
||||
if(!req && typeof XMLHttpRequest != "undefined")
|
||||
req = new XMLHttpRequest();
|
||||
|
||||
if (xajaxDebug) {
|
||||
if (!req) this.DebugMessage("Request Object Instantiation failed.");
|
||||
}
|
||||
|
||||
return req;
|
||||
}
|
||||
|
||||
// xajax.$() is shorthand for document.getElementById()
|
||||
this.$ = function(sId)
|
||||
{
|
||||
if (!sId) {
|
||||
return null;
|
||||
}
|
||||
var returnObj = document.getElementById(sId);
|
||||
if (xajaxDebug && !returnObj && sId != this.workId) {
|
||||
this.DebugMessage("Element with the id \"" + sId + "\" not found.");
|
||||
}
|
||||
return returnObj;
|
||||
}
|
||||
|
||||
// xajax.include(sFileName) dynamically includes an external javascript file
|
||||
this.include = function(sFileName)
|
||||
{
|
||||
var objHead = document.getElementsByTagName('head');
|
||||
var objScript = document.createElement('script');
|
||||
objScript.type = 'text/javascript';
|
||||
objScript.src = sFileName;
|
||||
objHead[0].appendChild(objScript);
|
||||
}
|
||||
|
||||
// xajax.addHandler adds an event handler to an element
|
||||
this.addHandler = function(sElementId, sEvent, sFunctionName)
|
||||
{
|
||||
if (window.addEventListener)
|
||||
{
|
||||
eval("this.$('"+sElementId+"').addEventListener('"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
else
|
||||
{
|
||||
eval("this.$('"+sElementId+"').attachEvent('on"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.removeHandler removes an event handler from an element
|
||||
this.removeHandler = function(sElementId, sEvent, sFunctionName)
|
||||
{
|
||||
if (window.addEventListener)
|
||||
{
|
||||
eval("this.$('"+sElementId+"').removeEventListener('"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
else
|
||||
{
|
||||
eval("this.$('"+sElementId+"').detachEvent('on"+sEvent+"',"+sFunctionName+",false);");
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.create creates a new child node under a parent
|
||||
this.create = function(sParentId, sTag, sId)
|
||||
{
|
||||
var objParent = this.$(sParentId);
|
||||
objElement = document.createElement(sTag);
|
||||
objElement.setAttribute('id',sId);
|
||||
objParent.appendChild(objElement);
|
||||
}
|
||||
|
||||
// xajax.insert inserts a new node before another node
|
||||
this.insert = function(sBeforeId, sTag, sId)
|
||||
{
|
||||
var objSibling = this.$(sBeforeId);
|
||||
objElement = document.createElement(sTag);
|
||||
objElement.setAttribute('id',sId);
|
||||
objSibling.parentNode.insertBefore(objElement, objSibling);
|
||||
}
|
||||
|
||||
this.getInput = function(sType, sName, sId)
|
||||
{
|
||||
var Obj;
|
||||
if (sType == "radio" && !window.addEventListener)
|
||||
{
|
||||
Obj = document.createElement('<input type="radio" id="'+sId+'" name="'+sName+'">');
|
||||
}
|
||||
else
|
||||
{
|
||||
Obj = document.createElement('input');
|
||||
Obj.setAttribute('type',sType);
|
||||
Obj.setAttribute('name',sName);
|
||||
Obj.setAttribute('id',sId);
|
||||
}
|
||||
return Obj;
|
||||
}
|
||||
|
||||
// xajax.createInput creates a new input node under a parent
|
||||
this.createInput = function(sParentId, sType, sName, sId)
|
||||
{
|
||||
var objParent = this.$(sParentId);
|
||||
var objElement = this.getInput(sType, sName, sId);
|
||||
objParent.appendChild(objElement);
|
||||
}
|
||||
|
||||
// xajax.insertInput creates a new input node before another node
|
||||
this.insertInput = function(sBeforeId, sType, sName, sId)
|
||||
{
|
||||
var objSibling = this.$(sBeforeId);
|
||||
var objElement = this.getInput(sType, sName, sId);
|
||||
objSibling.parentNode.insertBefore(objElement, objSibling);
|
||||
}
|
||||
|
||||
// xajax.remove deletes an element
|
||||
this.remove = function(sId)
|
||||
{
|
||||
objElement = this.$(sId);
|
||||
if (objElement.parentNode && objElement.parentNode.removeChild)
|
||||
{
|
||||
objElement.parentNode.removeChild(objElement);
|
||||
}
|
||||
}
|
||||
|
||||
//xajax.replace searches for text in an attribute of an element and replaces it
|
||||
//with a different text
|
||||
this.replace = function(sId,sAttribute,sSearch,sReplace)
|
||||
{
|
||||
var bFunction = false;
|
||||
|
||||
if (sAttribute == "innerHTML")
|
||||
sSearch = this.getBrowserHTML(sSearch);
|
||||
|
||||
eval("var txt=document.getElementById('"+sId+"')."+sAttribute);
|
||||
if (typeof txt == "function")
|
||||
{
|
||||
txt = txt.toString();
|
||||
bFunction = true;
|
||||
}
|
||||
if (txt.indexOf(sSearch)>-1)
|
||||
{
|
||||
var newTxt = '';
|
||||
while (txt.indexOf(sSearch) > -1)
|
||||
{
|
||||
x = txt.indexOf(sSearch)+sSearch.length+1;
|
||||
newTxt += txt.substr(0,x).replace(sSearch,sReplace);
|
||||
txt = txt.substr(x,txt.length-x);
|
||||
}
|
||||
newTxt += txt;
|
||||
if (bFunction)
|
||||
{
|
||||
eval("newTxt =" + newTxt);
|
||||
eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');
|
||||
}
|
||||
else if (this.willChange(sId,sAttribute,newTxt))
|
||||
{
|
||||
eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// xajax.getFormValues() builds a query string XML message from the elements of a form object
|
||||
this.getFormValues = function(frm)
|
||||
{
|
||||
var objForm;
|
||||
var submitDisabledElements = false;
|
||||
if (arguments.length > 1 && arguments[1] == true)
|
||||
submitDisabledElements = true;
|
||||
|
||||
if (typeof(frm) == "string")
|
||||
objForm = this.$(frm);
|
||||
else
|
||||
objForm = frm;
|
||||
var sXml = "<xjxquery><q>";
|
||||
if (objForm && objForm.tagName == 'FORM')
|
||||
{
|
||||
var formElements = objForm.elements;
|
||||
for( var i=0; i < formElements.length; i++)
|
||||
{
|
||||
if (formElements[i].type && (formElements[i].type == 'radio' || formElements[i].type == 'checkbox') && formElements[i].checked == false)
|
||||
continue;
|
||||
if (formElements[i].disabled && formElements[i].disabled == true && submitDisabledElements == false) continue;
|
||||
var name = formElements[i].name;
|
||||
if (name)
|
||||
{
|
||||
if (sXml != '<xjxquery><q>')
|
||||
sXml += '&';
|
||||
if(formElements[i].type=='select-multiple')
|
||||
{
|
||||
for (var j = 0; j < formElements[i].length; j++)
|
||||
{
|
||||
if (formElements[i].options[j].selected == true) sXml += name+"="+encodeURIComponent(formElements[i].options[j].value)+"&";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sXml += name+"="+encodeURIComponent(formElements[i].value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sXml +="</q></xjxquery>";
|
||||
|
||||
return sXml;
|
||||
}
|
||||
|
||||
// Generates an XML message that xajax can understand from a javascript object
|
||||
this.objectToXML = function(obj)
|
||||
{
|
||||
var sXml = "<xjxobj>";
|
||||
for (i in obj)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (i == 'constructor')
|
||||
continue;
|
||||
if (obj[i] && typeof(obj[i]) == 'function')
|
||||
continue;
|
||||
|
||||
var key = i;
|
||||
var value = obj[i];
|
||||
if (value && typeof(value)=="object" &&
|
||||
(value.constructor == Array
|
||||
) && this.depth <= 50)
|
||||
{
|
||||
this.depth++;
|
||||
value = this.objectToXML(value);
|
||||
this.depth--;
|
||||
}
|
||||
|
||||
sXml += "<e><k>"+key+"</k><v>"+value+"</v></e>";
|
||||
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
if (xajaxDebug) this.DebugMessage(e);
|
||||
}
|
||||
}
|
||||
sXml += "</xjxobj>";
|
||||
|
||||
return sXml;
|
||||
}
|
||||
|
||||
// Sends a XMLHttpRequest to call the specified PHP function on the server
|
||||
// * sRequestType is optional -- defaults to POST
|
||||
this.call = function(sFunction, aArgs, sRequestType)
|
||||
{
|
||||
var i,r,postData;
|
||||
if (document.body && xajaxWaitCursor)
|
||||
document.body.style.cursor = 'wait';
|
||||
if (xajaxStatusMessages == true) window.status = 'Sending Request...';
|
||||
if (xajaxDebug) this.DebugMessage("Starting xajax...");
|
||||
if (sRequestType == null) {
|
||||
var xajaxRequestType = xajaxDefinedPost;
|
||||
}
|
||||
else {
|
||||
var xajaxRequestType = sRequestType;
|
||||
}
|
||||
var uri = xajaxRequestUri;
|
||||
var value;
|
||||
switch(xajaxRequestType)
|
||||
{
|
||||
case xajaxDefinedGet:{
|
||||
var uriGet = uri.indexOf("?")==-1?"?xajax="+encodeURIComponent(sFunction):"&xajax="+encodeURIComponent(sFunction);
|
||||
if (aArgs) {
|
||||
for (i = 0; i<aArgs.length; i++)
|
||||
{
|
||||
value = aArgs[i];
|
||||
if (typeof(value)=="object")
|
||||
value = this.objectToXML(value);
|
||||
uriGet += "&xajaxargs[]="+encodeURIComponent(value);
|
||||
}
|
||||
}
|
||||
uriGet += "&xajaxr=" + new Date().getTime();
|
||||
uri += uriGet;
|
||||
postData = null;
|
||||
} break;
|
||||
case xajaxDefinedPost:{
|
||||
postData = "xajax="+encodeURIComponent(sFunction);
|
||||
postData += "&xajaxr="+new Date().getTime();
|
||||
if (aArgs) {
|
||||
for (i = 0; i <aArgs.length; i++)
|
||||
{
|
||||
value = aArgs[i];
|
||||
if (typeof(value)=="object")
|
||||
value = this.objectToXML(value);
|
||||
postData = postData+"&xajaxargs[]="+encodeURIComponent(value);
|
||||
}
|
||||
}
|
||||
} break;
|
||||
default:
|
||||
alert("Illegal request type: " + xajaxRequestType); return false; break;
|
||||
}
|
||||
r = this.getRequestObject();
|
||||
if (!r) return false;
|
||||
r.open(xajaxRequestType==xajaxDefinedGet?"GET":"POST", uri, true);
|
||||
if (xajaxRequestType == xajaxDefinedPost)
|
||||
{
|
||||
try
|
||||
{
|
||||
r.setRequestHeader("Method", "POST " + uri + " HTTP/1.5");
|
||||
r.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert("Your browser does not appear to support asynchronous requests using POST.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
r.onreadystatechange = function()
|
||||
{
|
||||
if (r.readyState != 4)
|
||||
return;
|
||||
|
||||
if (r.status==200)
|
||||
{
|
||||
if (xajaxDebug && r.responseText.length < 1000) xajax.DebugMessage("Received:\n" + r.responseText);
|
||||
else if (xajaxDebug) xajax.DebugMessage("Received:\n" + r.responseText.substr(0,1000)+"...\n[long response]\n...</xajax>");
|
||||
if (r.responseXML)
|
||||
xajax.processResponse(r.responseXML);
|
||||
else {
|
||||
alert("Error: the XML response that was returned from the server is invalid.");
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'Invalid XML response error';
|
||||
}
|
||||
}
|
||||
|
||||
delete r;
|
||||
}
|
||||
if (xajaxDebug) this.DebugMessage("Calling "+sFunction +" uri="+uri+" (post:"+ postData +")");
|
||||
r.send(postData);
|
||||
if (xajaxStatusMessages == true) window.status = 'Waiting for data...';
|
||||
delete r;
|
||||
return true;
|
||||
}
|
||||
|
||||
//Gets the text as it would be if it were being retrieved from
|
||||
//the innerHTML property in the current browser
|
||||
this.getBrowserHTML = function(html)
|
||||
{
|
||||
tmpXajax = this.$(this.workId);
|
||||
if (tmpXajax == null)
|
||||
{
|
||||
tmpXajax = document.createElement("div");
|
||||
tmpXajax.setAttribute('id',this.workId);
|
||||
tmpXajax.style.display = "none";
|
||||
tmpXajax.style.visibility = "hidden";
|
||||
document.body.appendChild(tmpXajax);
|
||||
}
|
||||
tmpXajax.innerHTML = html;
|
||||
var browserHTML = tmpXajax.innerHTML;
|
||||
tmpXajax.innerHTML = '';
|
||||
|
||||
return browserHTML;
|
||||
}
|
||||
|
||||
// Tests if the new Data is the same as the extant data
|
||||
this.willChange = function(element, attribute, newData)
|
||||
{
|
||||
if (!document.body)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
var oldData;
|
||||
if (attribute == "innerHTML")
|
||||
{
|
||||
newData = this.getBrowserHTML(newData);
|
||||
}
|
||||
eval("oldData=document.getElementById('"+element+"')."+attribute);
|
||||
if (newData != oldData)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
//Process XML xajaxResponses returned from the request
|
||||
this.processResponse = function(xml)
|
||||
{
|
||||
if (xajaxStatusMessages == true) window.status = 'Processing...';
|
||||
var tmpXajax = null;
|
||||
xml = xml.documentElement;
|
||||
if (xml == null) {
|
||||
alert("Error: the XML response that was returned from the server cannot be processed.");
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'XML response processing error';
|
||||
return;
|
||||
}
|
||||
for (i=0; i<xml.childNodes.length; i++)
|
||||
{
|
||||
if (xml.childNodes[i].nodeName == "cmd")
|
||||
{
|
||||
var cmd;
|
||||
var id;
|
||||
var property;
|
||||
var data;
|
||||
var search;
|
||||
var type;
|
||||
var before;
|
||||
|
||||
for (j=0; j<xml.childNodes[i].attributes.length; j++)
|
||||
{
|
||||
if (xml.childNodes[i].attributes[j].name == "n")
|
||||
{
|
||||
cmd = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "t")
|
||||
{
|
||||
id = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "p")
|
||||
{
|
||||
property = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
if (xml.childNodes[i].attributes[j].name == "c")
|
||||
{
|
||||
type = xml.childNodes[i].attributes[j].value;
|
||||
}
|
||||
}
|
||||
if (xml.childNodes[i].childNodes.length > 1)
|
||||
{
|
||||
for (j=0; j<xml.childNodes[i].childNodes.length; j++)
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].nodeName == "s")
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].firstChild)
|
||||
search = xml.childNodes[i].childNodes[j].firstChild.nodeValue;
|
||||
}
|
||||
if (xml.childNodes[i].childNodes[j].nodeName == "r")
|
||||
{
|
||||
if (xml.childNodes[i].childNodes[j].firstChild)
|
||||
data = xml.childNodes[i].childNodes[j].firstChild.data;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (xml.childNodes[i].firstChild)
|
||||
data = xml.childNodes[i].firstChild.nodeValue;
|
||||
else
|
||||
data = "";
|
||||
|
||||
var objElement = this.$(id);
|
||||
try
|
||||
{
|
||||
if (cmd=="al")
|
||||
{
|
||||
alert(data);
|
||||
}
|
||||
if (cmd=="js")
|
||||
{
|
||||
eval(data);
|
||||
}
|
||||
if (cmd=="in")
|
||||
{
|
||||
this.include(data);
|
||||
}
|
||||
if (cmd=="as")
|
||||
{
|
||||
if (this.willChange(id,property,data))
|
||||
{
|
||||
eval("objElement."+property+"=data;");
|
||||
}
|
||||
}
|
||||
if (cmd=="ap")
|
||||
{
|
||||
eval("objElement."+property+"+=data;");
|
||||
}
|
||||
if (cmd=="pp")
|
||||
{
|
||||
eval("objElement."+property+"=data+objElement."+property);
|
||||
}
|
||||
if (cmd=="rp")
|
||||
{
|
||||
this.replace(id,property,search,data)
|
||||
}
|
||||
if (cmd=="rm")
|
||||
{
|
||||
this.remove(id);
|
||||
}
|
||||
if (cmd=="ce")
|
||||
{
|
||||
this.create(id,data,property);
|
||||
}
|
||||
if (cmd=="ie")
|
||||
{
|
||||
this.insert(id,data,property);
|
||||
}
|
||||
if (cmd=="ci")
|
||||
{
|
||||
this.createInput(id,type,data,property);
|
||||
}
|
||||
if (cmd=="ii")
|
||||
{
|
||||
this.insertInput(id,type,data,property);
|
||||
}
|
||||
if (cmd=="ev")
|
||||
{
|
||||
eval("this.$('"+id+"')."+property+"= function(){"+data+";}");
|
||||
}
|
||||
if (cmd=="ah")
|
||||
{
|
||||
this.addHandler(id, property, data);
|
||||
}
|
||||
if (cmd=="rh")
|
||||
{
|
||||
this.removeHandler(id, property, data);
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert(e);
|
||||
}
|
||||
delete objElement;
|
||||
delete cmd;
|
||||
delete id;
|
||||
delete property;
|
||||
delete search;
|
||||
delete data;
|
||||
delete type;
|
||||
delete before;
|
||||
}
|
||||
}
|
||||
delete xml;
|
||||
document.body.style.cursor = 'default';
|
||||
if (xajaxStatusMessages == true) window.status = 'Done';
|
||||
}
|
||||
}
|
||||
|
||||
var xajax = new Xajax();
|
||||
51
www/-installation-/includes/router.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: router.php 8180 2007-07-23 05:52:29Z eddieajau $
|
||||
* @package Joomla.Framework
|
||||
* @subpackage Application
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// Check to ensure this file is within the rest of the framework
|
||||
defined('JPATH_BASE') or die();
|
||||
|
||||
jimport( 'joomla.application.router' );
|
||||
|
||||
/**
|
||||
* Class to create and parse routes
|
||||
*
|
||||
* @package Joomla
|
||||
* @since 1.5
|
||||
*/
|
||||
class JRouterInstallation extends JObject
|
||||
{
|
||||
/**
|
||||
* Function to convert a route to an internal URI
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function parse($url)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to convert an internal URI to a route
|
||||
*
|
||||
* @param string $string The internal URL
|
||||
* @return string The absolute search engine friendly URL
|
||||
* @since 1.5
|
||||
*/
|
||||
function build($url)
|
||||
{
|
||||
$url = str_replace('&', '&', $url);
|
||||
|
||||
return $url;
|
||||
}
|
||||
}
|
||||
504
www/-installation-/includes/xajax/LICENSE.txt
Normal file
@ -0,0 +1,504 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
104
www/-installation-/includes/xajax/README.txt
Normal file
@ -0,0 +1,104 @@
|
||||
====================================================================
|
||||
xajax PHP Class Library
|
||||
The easiest way to develop asynchronous Ajax applications with PHP
|
||||
|
||||
Version 0.2 (stable release)
|
||||
README Text File
|
||||
|
||||
------------------------------------------------------
|
||||
| Release Notes: |
|
||||
| http://wiki.xajaxproject.org/0.2_Release_Notes |
|
||||
| |
|
||||
| Lead Developers: |
|
||||
| Jared White (jared@intuitivefuture.com) |
|
||||
| J. Max Wilson (jmaxwilson@users.sourceforge.net) |
|
||||
------------------------------------------------------
|
||||
====================================================================
|
||||
|
||||
1. Introduction
|
||||
|
||||
xajax is a PHP library that you can include in your PHP scripts
|
||||
to provide an easy way for Web pages to call PHP functions or
|
||||
object methods using Ajax (Asynchronous Javascript And XML). Simply
|
||||
register one or more functions/methods with the xajax object that
|
||||
return a proper XML response using the supplied response class, add
|
||||
a statement in your HTML header to print the Javascript include,
|
||||
and run a request processor prior to outputting any HTML. Then add
|
||||
some simple Javascript function calls to your HTML, and xajax takes
|
||||
care of the rest!
|
||||
|
||||
xajax includes a Javascript object to facilitate the communication
|
||||
between the browser and the server, and it can also be used as a
|
||||
Javascript library directly to simplify certain DOM and event
|
||||
manipulations. However, you can definitely choose to use a
|
||||
dedicated Javascript "engine" of your liking and integrate it with
|
||||
xajax's client/server communication features in a number of ways.
|
||||
More tightly-coupled integration will be forthcoming in a future
|
||||
version of xajax.
|
||||
|
||||
2. For More Information
|
||||
|
||||
The official xajax Web site is located at:
|
||||
http://www.xajaxproject.org
|
||||
|
||||
Visit the xajax Forums at:
|
||||
http://community.xajaxproject.org
|
||||
to keep track of the latest news and participate in the community
|
||||
discussion.
|
||||
|
||||
There is also a wiki with documentation, tips & tricks, and other
|
||||
information located at:
|
||||
http://wiki.xajaxproject.org
|
||||
|
||||
3. Installation
|
||||
|
||||
To run xajax, you need:
|
||||
* Apache Web Server or IIS for Windows XP/2003 Server
|
||||
(other servers may or may not work and are not supported at this
|
||||
time)
|
||||
* PHP 4.3.x or PHP 5.x
|
||||
* Minimum supported browsers: Internet Explorer 5.5, Firefox 1.0 (or
|
||||
equivalent Gecko-based browser), Safari 1.3, Opera 8.5 (older
|
||||
versions only work with GET requests)
|
||||
|
||||
To install xajax:
|
||||
Unpack the contents of this archive and copy them to your main Web
|
||||
site folder. Or if you wish, you can put all of the files in a
|
||||
dedicated "xajax" folder on your Web server (make sure that you
|
||||
know what that URL is relative your site pages so you can provide
|
||||
xajax with the correct installed folder URL).
|
||||
|
||||
Make sure that the "xajax_js" folder within the main xajax folder
|
||||
is set to be writable by the Web server, since xajax will need to
|
||||
compress the verbose Javascript file into a smaller file suitable
|
||||
for constant Web access. Also, the "thewall" folder in the
|
||||
"examples" folder needs to be writable by the Web server as well.
|
||||
|
||||
Within the main xajax folder there are two folders: "examples"
|
||||
and "tests". You should be able to view these PHP pages from your
|
||||
Web browser and see xajax working in action. If you can view the
|
||||
pages but the AJAX calls are not working, there may be something
|
||||
wrong with your server setup or perhaps your browser is not
|
||||
supported or configured correctly. If worst comes to worst, post
|
||||
a message in our forums and someone may be able to help you.
|
||||
|
||||
4. Documentation
|
||||
|
||||
Detailed documentation for the xajax PHP classes is available on
|
||||
our wiki (URL listed above in section 2), and more in on the way
|
||||
(particularly in regards to the Javascript component of xajax).
|
||||
Another good way of learning xajax is to look at the code for the
|
||||
examples and tests. If you need any help, pop in the forums and
|
||||
ask for assistance (and the more specific your questions are,
|
||||
the better the answers will be).
|
||||
|
||||
5. Contributing to xajax
|
||||
|
||||
xajax is released under the LGPL open source license. If you wish
|
||||
to contribute to the project or suggest new features, introduce
|
||||
yourself on the forums or you can e-mail the lead developers at
|
||||
the addresses listed at the top of this README.
|
||||
|
||||
6. Good luck and enjoy!
|
||||
|
||||
====================================================================
|
||||
1
www/-installation-/includes/xajax/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
856
www/-installation-/includes/xajax/xajax.inc.php
Normal file
@ -0,0 +1,856 @@
|
||||
<?php
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// xajax.inc.php::Main xajax class and setup file
|
||||
//
|
||||
// xajax version 0.2
|
||||
// Copyright (C) 2005 - 2006 by Jared White & J. Max Wilson
|
||||
// http://xajax.sourceforge.net
|
||||
//
|
||||
// xajax is an open source PHP class library for easily creating powerful
|
||||
// PHP-driven, web-based AJAX Applications. Using xajax, you can asynchronously
|
||||
// call PHP functions and update the content of your your webpage without
|
||||
// reloading the page.
|
||||
//
|
||||
// xajax is released under the terms of the LGPL license
|
||||
// http://www.gnu.org/copyleft/lesser.html#SEC3
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Define XAJAX_DEFAULT_CHAR_ENCODING that is used by both
|
||||
// the xajax and xajaxResponse classes
|
||||
if (!defined ('XAJAX_DEFAULT_CHAR_ENCODING')) {
|
||||
define ('XAJAX_DEFAULT_CHAR_ENCODING', 'utf-8' );
|
||||
}
|
||||
|
||||
require_once(dirname( __FILE__ ).DIRECTORY_SEPARATOR."xajaxResponse.inc.php");
|
||||
|
||||
// Communication Method Defines
|
||||
if (!defined ('XAJAX_GET'))
|
||||
{
|
||||
define ('XAJAX_GET', 0);
|
||||
}
|
||||
if (!defined ('XAJAX_POST'))
|
||||
{
|
||||
define ('XAJAX_POST', 1);
|
||||
}
|
||||
|
||||
// the xajax class generates the xajax javascript for your page including the
|
||||
// javascript wrappers for the PHP functions that you want to call from your page.
|
||||
// It also handles processing and executing the command messages in the xml responses
|
||||
// sent back to your page from your PHP functions.
|
||||
class xajax
|
||||
{
|
||||
var $aFunctions; // Array of PHP functions that will be callable through javascript wrappers
|
||||
var $aObjects; // Array of object callbacks that will allow Javascript to call PHP methods (key=function name)
|
||||
var $aFunctionRequestTypes; // Array of RequestTypes to be used with each function (key=function name)
|
||||
var $aFunctionIncludeFiles; // Array of Include Files for any external functions (key=function name)
|
||||
var $sCatchAllFunction; // Name of the PHP function to call if no callable function was found
|
||||
var $sPreFunction; // Name of the PHP function to call before any other function
|
||||
var $sRequestURI; // The URI for making requests to the xajax object
|
||||
var $bDebug; // Show debug messages (true/false)
|
||||
var $bExitAllowed; // Allow xajax to exit after processing a request (true/false)
|
||||
var $bErrorHandler; // Use an special xajax error handler so the errors are sent to the browser properly
|
||||
var $sLogFile; // Specify if xajax should log errors (and more information in a future release)
|
||||
var $sWrapperPrefix; // The prefix to prepend to the javascript wraper function name
|
||||
var $bStatusMessages; // Show debug messages (true/false)
|
||||
var $bWaitCursor; // Use wait cursor in browser (true/false)
|
||||
var $bCleanBuffer; // Clean all output buffers before outputting response (true/false)
|
||||
var $aObjArray; // Array for parsing complex objects
|
||||
var $iPos; // Position in $aObjArray
|
||||
var $sEncoding; // The Character Encoding to use
|
||||
|
||||
// Contructor
|
||||
// $sRequestURI - defaults to the current page
|
||||
// $sWrapperPrefix - defaults to "xajax_";
|
||||
// $sEncoding - defaults to XAJAX_DEFAULT_CHAR_ENCODING defined above
|
||||
// $bDebug Mode - defaults to false
|
||||
// usage: $xajax = new xajax();
|
||||
function xajax($sRequestURI="",$sWrapperPrefix="xajax_",$sEncoding=XAJAX_DEFAULT_CHAR_ENCODING,$bDebug=false)
|
||||
{
|
||||
$this->aFunctions = array();
|
||||
$this->aObjects = array();
|
||||
$this->aFunctionIncludeFiles = array();
|
||||
$this->sRequestURI = $sRequestURI;
|
||||
if ($this->sRequestURI == "")
|
||||
$this->sRequestURI = $this->_detectURI();
|
||||
$this->sWrapperPrefix = $sWrapperPrefix;
|
||||
$this->setCharEncoding($sEncoding);
|
||||
$this->bDebug = $bDebug;
|
||||
$this->bWaitCursor = true;
|
||||
$this->bExitAllowed = true;
|
||||
$this->bErrorHandler = false;
|
||||
$this->sLogFile = "";
|
||||
$this->bCleanBuffer = true;
|
||||
}
|
||||
|
||||
// setRequestURI() sets the URI to which requests will be made
|
||||
// usage: $xajax->setRequestURI("http://xajax.sourceforge.net");
|
||||
function setRequestURI($sRequestURI)
|
||||
{
|
||||
$this->sRequestURI = $sRequestURI;
|
||||
}
|
||||
|
||||
// debugOn() enables debug messages for xajax
|
||||
function debugOn()
|
||||
{
|
||||
$this->bDebug = true;
|
||||
}
|
||||
|
||||
// debugOff() disables debug messages for xajax (default behavior)
|
||||
function debugOff()
|
||||
{
|
||||
$this->bDebug = false;
|
||||
}
|
||||
|
||||
// statusMessagesOn() enables messages in the statusbar for xajax
|
||||
function statusMessagesOn()
|
||||
{
|
||||
$this->bStatusMessages = true;
|
||||
}
|
||||
|
||||
// statusMessagesOff() disables messages in the statusbar for xajax (default behavior)
|
||||
function statusMessagesOff()
|
||||
{
|
||||
$this->bStatusMessages = false;
|
||||
}
|
||||
|
||||
// waitCursor() enables the wait cursor to be displayed in the browser (default behavior)
|
||||
function waitCursorOn()
|
||||
{
|
||||
$this->bWaitCursor = true;
|
||||
}
|
||||
|
||||
// waitCursorOff() disables the wait cursor to be displayed in the browser
|
||||
function waitCursorOff()
|
||||
{
|
||||
$this->bWaitCursor = false;
|
||||
}
|
||||
|
||||
// exitAllowedOn() enables xajax to exit immediately after processing a request
|
||||
// and sending the response back to the browser (default behavior)
|
||||
function exitAllowedOn()
|
||||
{
|
||||
$this->bExitAllowed = true;
|
||||
}
|
||||
|
||||
// exitAllowedOff() disables xajax's default behavior of exiting immediately
|
||||
// after processing a request and sending the response back to the browser
|
||||
function exitAllowedOff()
|
||||
{
|
||||
$this->bExitAllowed = false;
|
||||
}
|
||||
|
||||
// errorHandlerOn() turns on xajax's error handling system so that PHP errors
|
||||
// that occur during a request are trapped and pushed to the browser in the
|
||||
// form of a Javascript alert
|
||||
function errorHandlerOn()
|
||||
{
|
||||
$this->bErrorHandler = true;
|
||||
}
|
||||
// errorHandlerOff() turns off xajax's error handling system (default behavior)
|
||||
function errorHandlerOff()
|
||||
{
|
||||
$this->bErrorHandler = false;
|
||||
}
|
||||
|
||||
// setLogFile() specifies a log file that will be written to by xajax during
|
||||
// a request (used only by the error handling system at present). If you don't
|
||||
// invoke this method, or you pass in "", then no log file will be written to.
|
||||
// usage: $xajax->setLogFile("/xajax_logs/errors.log");
|
||||
function setLogFile($sFilename)
|
||||
{
|
||||
$this->sLogFile = $sFilename;
|
||||
}
|
||||
|
||||
// cleanBufferOn() causes xajax to clean out all output buffers before outputting
|
||||
// a response (default behavior)
|
||||
function cleanBufferOn()
|
||||
{
|
||||
$this->bCleanBuffer = true;
|
||||
}
|
||||
// cleanBufferOff() turns off xajax's output buffer cleaning
|
||||
function cleanBufferOff()
|
||||
{
|
||||
$this->bCleanBuffer = false;
|
||||
}
|
||||
|
||||
// setWrapperPrefix() sets the prefix that will be appended to the Javascript
|
||||
// wrapper functions (default is "xajax_").
|
||||
function setWrapperPrefix($sPrefix)
|
||||
{
|
||||
$this->sWrapperPrefix = $sPrefix;
|
||||
}
|
||||
|
||||
// setCharEncoding() sets the character encoding to be used by xajax
|
||||
// usage: $xajax->setCharEncoding("utf-8");
|
||||
// *Note: to change the default character encoding for all xajax responses, set
|
||||
// the XAJAX_DEFAULT_CHAR_ENCODING constant near the beginning of the xajax.inc.php file
|
||||
function setCharEncoding($sEncoding)
|
||||
{
|
||||
$this->sEncoding = $sEncoding;
|
||||
}
|
||||
|
||||
// registerFunction() registers a PHP function or method to be callable through
|
||||
// xajax in your Javascript. If you want to register a function, pass in the name
|
||||
// of that function. If you want to register a static class method, pass in an array
|
||||
// like so:
|
||||
// array("myFunctionName", "myClass", "myMethod")
|
||||
// For an object instance method, use an object variable for the second array element
|
||||
// (and in PHP 4 make sure you put an & before the variable to pass the object by
|
||||
// reference). Note: the function name is what you call via Javascript, so it can be
|
||||
// anything as long as it doesn't conflict with any other registered function name.
|
||||
//
|
||||
// $mFunction is a string containing the function name or an object callback array
|
||||
// $sRequestType is the RequestType (XAJAX_GET/XAJAX_POST) that should be used
|
||||
// for this function. Defaults to XAJAX_POST.
|
||||
// usage: $xajax->registerFunction("myFunction");
|
||||
// or: $xajax->registerFunction(array("myFunctionName", &$myObject, "myMethod"));
|
||||
function registerFunction($mFunction,$sRequestType=XAJAX_POST)
|
||||
{
|
||||
if (is_array($mFunction)) {
|
||||
$this->aFunctions[$mFunction[0]] = 1;
|
||||
$this->aFunctionRequestTypes[$mFunction[0]] = $sRequestType;
|
||||
$this->aObjects[$mFunction[0]] = array_slice($mFunction, 1);
|
||||
}
|
||||
else {
|
||||
$this->aFunctions[$mFunction] = 1;
|
||||
$this->aFunctionRequestTypes[$mFunction] = $sRequestType;
|
||||
}
|
||||
}
|
||||
|
||||
// registerExternalFunction() registers a PHP function to be callable through xajax
|
||||
// which is located in some other file. If the function is requested the external
|
||||
// file will be included to define the function before the function is called
|
||||
// $mFunction is a string containing the function name or an object callback array
|
||||
// see registerFunction() for more info on object callback arrays
|
||||
// $sIncludeFile is a string containing the path and filename of the include file
|
||||
// $sRequestType is the RequestType (XAJAX_GET/XAJAX_POST) that should be used
|
||||
// for this function. Defaults to XAJAX_POST.
|
||||
// usage: $xajax->registerExternalFunction("myFunction","myFunction.inc.php",XAJAX_POST);
|
||||
function registerExternalFunction($mFunction,$sIncludeFile,$sRequestType=XAJAX_POST)
|
||||
{
|
||||
$this->registerFunction($mFunction, $sRequestType);
|
||||
|
||||
if (is_array($mFunction)) {
|
||||
$this->aFunctionIncludeFiles[$mFunction[0]] = $sIncludeFile;
|
||||
}
|
||||
else {
|
||||
$this->aFunctionIncludeFiles[$mFunction] = $sIncludeFile;
|
||||
}
|
||||
}
|
||||
|
||||
// registerCatchAllFunction() registers a PHP function to be called when xajax cannot
|
||||
// find the function being called via Javascript. Because this is technically
|
||||
// impossible when using "wrapped" functions, the catch-all feature is only useful
|
||||
// when you're directly using the xajax.call() Javascript method. Use the catch-all
|
||||
// feature when you want more dynamic ability to intercept unknown calls and handle
|
||||
// them in a custom way.
|
||||
// $mFunction is a string containing the function name or an object callback array
|
||||
// see registerFunction() for more info on object callback arrays
|
||||
// usage: $xajax->registerCatchAllFunction("myCatchAllFunction");
|
||||
function registerCatchAllFunction($mFunction)
|
||||
{
|
||||
if (is_array($mFunction)) {
|
||||
$this->sCatchAllFunction = $mFunction[0];
|
||||
$this->aObjects[$mFunction[0]] = array_slice($mFunction, 1);
|
||||
}
|
||||
else {
|
||||
$this->sCatchAllFunction = $mFunction;
|
||||
}
|
||||
}
|
||||
|
||||
// registerPreFunction() registers a PHP function to be called before xajax calls
|
||||
// the requested function. xajax will automatically add the request function's response
|
||||
// to the pre-function's response to create a single response. Another feature is
|
||||
// the ability to return not just a response, but an array with the first element
|
||||
// being false (a boolean) and the second being the response. In this case, the
|
||||
// pre-function's response will be returned to the browser without xajax calling
|
||||
// the requested function.
|
||||
// $mFunction is a string containing the function name or an object callback array
|
||||
// see registerFunction() for more info on object callback arrays
|
||||
// usage $xajax->registerPreFunction("myPreFunction");
|
||||
function registerPreFunction($mFunction)
|
||||
{
|
||||
if (is_array($mFunction)) {
|
||||
$this->sPreFunction = $mFunction[0];
|
||||
$this->aObjects[$mFunction[0]] = array_slice($mFunction, 1);
|
||||
}
|
||||
else {
|
||||
$this->sPreFunction = $mFunction;
|
||||
}
|
||||
}
|
||||
|
||||
// returns true if xajax can process the request, false if otherwise
|
||||
// you can use this to determine if xajax needs to process the request or not
|
||||
function canProcessRequests()
|
||||
{
|
||||
if ($this->getRequestMode() != -1) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
// returns the current request mode, or -1 if there is none
|
||||
function getRequestMode()
|
||||
{
|
||||
if (!empty($_GET["xajax"]))
|
||||
return XAJAX_GET;
|
||||
|
||||
if (!empty($_POST["xajax"]))
|
||||
return XAJAX_POST;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
// processRequests() is the main communications engine of xajax
|
||||
// The engine handles all incoming xajax requests, calls the apporiate PHP functions
|
||||
// and passes the xml responses back to the javascript response handler
|
||||
// if your RequestURI is the same as your web page then this function should
|
||||
// be called before any headers or html has been sent.
|
||||
// usage: $xajax->processRequests()
|
||||
function processRequests()
|
||||
{
|
||||
|
||||
$requestMode = -1;
|
||||
$sFunctionName = "";
|
||||
$bFoundFunction = true;
|
||||
$bFunctionIsCatchAll = false;
|
||||
$sFunctionNameForSpecial = "";
|
||||
$aArgs = array();
|
||||
$sPreResponse = "";
|
||||
$bEndRequest = false;
|
||||
$sResponse = "";
|
||||
|
||||
$requestMode = $this->getRequestMode();
|
||||
if ($requestMode == -1) return;
|
||||
|
||||
if ($requestMode == XAJAX_POST)
|
||||
{
|
||||
$sFunctionName = $_POST["xajax"];
|
||||
|
||||
if (!empty($_POST["xajaxargs"]))
|
||||
$aArgs = $_POST["xajaxargs"];
|
||||
}
|
||||
else
|
||||
{
|
||||
header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
|
||||
header ("Cache-Control: no-cache, must-revalidate");
|
||||
header ("Pragma: no-cache");
|
||||
header("Content-type: text/xml");
|
||||
|
||||
$sFunctionName = $_GET["xajax"];
|
||||
|
||||
if (!empty($_GET["xajaxargs"]))
|
||||
$aArgs = $_GET["xajaxargs"];
|
||||
}
|
||||
|
||||
// Use xajax error handler if necessary
|
||||
if ($this->bErrorHandler) {
|
||||
$GLOBALS['xajaxErrorHandlerText'] = "";
|
||||
set_error_handler("xajaxErrorHandler");
|
||||
}
|
||||
|
||||
if ($this->sPreFunction) {
|
||||
if (!$this->_isFunctionCallable($this->sPreFunction)) {
|
||||
$bFoundFunction = false;
|
||||
$objResponse = new xajaxResponse();
|
||||
$objResponse->addAlert("Unknown Pre-Function ". $this->sPreFunction);
|
||||
$sResponse = $objResponse->getXML();
|
||||
}
|
||||
}
|
||||
//include any external dependencies associated with this function name
|
||||
if (array_key_exists($sFunctionName,$this->aFunctionIncludeFiles))
|
||||
{
|
||||
ob_start();
|
||||
include_once($this->aFunctionIncludeFiles[$sFunctionName]);
|
||||
ob_end_clean();
|
||||
}
|
||||
|
||||
if ($bFoundFunction) {
|
||||
$sFunctionNameForSpecial = $sFunctionName;
|
||||
if (!array_key_exists($sFunctionName, $this->aFunctions))
|
||||
{
|
||||
if ($this->sCatchAllFunction) {
|
||||
$sFunctionName = $this->sCatchAllFunction;
|
||||
$bFunctionIsCatchAll = true;
|
||||
}
|
||||
else {
|
||||
$bFoundFunction = false;
|
||||
$objResponse = new xajaxResponse();
|
||||
$objResponse->addAlert("Unknown Function $sFunctionName.");
|
||||
$sResponse = $objResponse->getXML();
|
||||
}
|
||||
}
|
||||
else if ($this->aFunctionRequestTypes[$sFunctionName] != $requestMode)
|
||||
{
|
||||
$bFoundFunction = false;
|
||||
$objResponse = new xajaxResponse();
|
||||
$objResponse->addAlert("Incorrect Request Type.");
|
||||
$sResponse = $objResponse->getXML();
|
||||
}
|
||||
}
|
||||
|
||||
if ($bFoundFunction)
|
||||
{
|
||||
for ($i = 0; $i < sizeof($aArgs); $i++)
|
||||
{
|
||||
// If magic quotes is on, then we need to strip the slashes from the args
|
||||
if (get_magic_quotes_gpc() == 1 && is_string($aArgs[$i])) {
|
||||
|
||||
$aArgs[$i] = stripslashes($aArgs[$i]);
|
||||
}
|
||||
if (stristr($aArgs[$i],"<xjxobj>") != false)
|
||||
{
|
||||
$aArgs[$i] = $this->_xmlToArray("xjxobj",$aArgs[$i]);
|
||||
}
|
||||
else if (stristr($aArgs[$i],"<xjxquery>") != false)
|
||||
{
|
||||
$aArgs[$i] = $this->_xmlToArray("xjxquery",$aArgs[$i]);
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->sPreFunction) {
|
||||
$mPreResponse = $this->_callFunction($this->sPreFunction, array($sFunctionNameForSpecial, $aArgs));
|
||||
if (is_array($mPreResponse) && $mPreResponse[0] === false) {
|
||||
$bEndRequest = true;
|
||||
$sPreResponse = $mPreResponse[1];
|
||||
}
|
||||
else {
|
||||
$sPreResponse = $mPreResponse;
|
||||
}
|
||||
if (is_a($sPreResponse, "xajaxResponse")) {
|
||||
$sPreResponse = $sPreResponse->getXML();
|
||||
}
|
||||
if ($bEndRequest) $sResponse = $sPreResponse;
|
||||
}
|
||||
|
||||
if (!$bEndRequest) {
|
||||
if (!$this->_isFunctionCallable($sFunctionName)) {
|
||||
$objResponse = new xajaxResponse();
|
||||
$objResponse->addAlert("The Registered Function $sFunctionName Could Not Be Found.");
|
||||
$sResponse = $objResponse->getXML();
|
||||
}
|
||||
else {
|
||||
if ($bFunctionIsCatchAll) {
|
||||
$aArgs = array($sFunctionNameForSpecial, $aArgs);
|
||||
}
|
||||
$sResponse = $this->_callFunction($sFunctionName, $aArgs);
|
||||
}
|
||||
if (is_a($sResponse, "xajaxResponse")) {
|
||||
$sResponse = $sResponse->getXML();
|
||||
}
|
||||
if (!is_string($sResponse) || strpos($sResponse, "<xjx>") === FALSE) {
|
||||
$objResponse = new xajaxResponse();
|
||||
$objResponse->addAlert("No XML Response Was Returned By Function $sFunctionName.");
|
||||
$sResponse = $objResponse->getXML();
|
||||
}
|
||||
else if ($sPreResponse != "") {
|
||||
$sNewResponse = new xajaxResponse();
|
||||
$sNewResponse->loadXML($sPreResponse);
|
||||
$sNewResponse->loadXML($sResponse);
|
||||
$sResponse = $sNewResponse->getXML();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$sContentHeader = "Content-type: text/xml;";
|
||||
if ($this->sEncoding && strlen(trim($this->sEncoding)) > 0)
|
||||
$sContentHeader .= " charset=".$this->sEncoding;
|
||||
header($sContentHeader);
|
||||
if ($this->bErrorHandler && !empty( $GLOBALS['xajaxErrorHandlerText'] )) {
|
||||
$sErrorResponse = new xajaxResponse();
|
||||
$sErrorResponse->addAlert("** PHP Error Messages: **" . $GLOBALS['xajaxErrorHandlerText']);
|
||||
if ($this->sLogFile) {
|
||||
$fH = @fopen($this->sLogFile, "a");
|
||||
if (!$fH) {
|
||||
$sErrorResponse->addAlert("** Logging Error **\n\nxajax was unable to write to the error log file:\n" . $this->sLogFile);
|
||||
}
|
||||
else {
|
||||
fwrite($fH, "** xajax Error Log - " . strftime("%b %e %Y %I:%M:%S %p") . " **" . $GLOBALS['xajaxErrorHandlerText'] . "\n\n\n");
|
||||
fclose($fH);
|
||||
}
|
||||
}
|
||||
|
||||
$sErrorResponse->loadXML($sResponse);
|
||||
$sResponse = $sErrorResponse->getXML();
|
||||
|
||||
}
|
||||
if ($this->bCleanBuffer) while (@ob_end_clean());
|
||||
print $sResponse;
|
||||
if ($this->bErrorHandler) restore_error_handler();
|
||||
|
||||
if ($this->bExitAllowed)
|
||||
exit();
|
||||
}
|
||||
|
||||
// printJavascript() prints the xajax javascript code into your page by printing
|
||||
// the output of the getJavascript() method. It should only be called between the
|
||||
// <head> </head> tags in your HTML page. Remember, if you only want to obtain the
|
||||
// result of this function, use getJavascript() instead.
|
||||
// $sJsURI is the relative address of the folder where xajax has been installed.
|
||||
// For instance, if your PHP file is "http://www.myserver.com/myfolder/mypage.php"
|
||||
// and xajax was installed in "http://www.myserver.com/anotherfolder", then
|
||||
// $sJsURI should be set to "../anotherfolder". Defaults to assuming xajax is in
|
||||
// the same folder as your PHP file.
|
||||
// $sJsFile is the relative folder/file pair of the xajax Javascript engine located
|
||||
// within the xajax installation folder. Defaults to xajax_js/xajax.js.
|
||||
// usage:
|
||||
// <head>
|
||||
// ...
|
||||
// < ?php $xajax->printJavascript(); ? >
|
||||
function printJavascript($sJsURI="", $sJsFile=NULL, $sJsFullFilename=NULL)
|
||||
{
|
||||
print $this->getJavascript($sJsURI, $sJsFile, $sJsFullFilename);
|
||||
}
|
||||
|
||||
// getJavascript() returns the xajax javascript code that should be added to
|
||||
// your HTML page between the <head> </head> tags. See printJavascript()
|
||||
// for information about the function arguments.
|
||||
// usage:
|
||||
// < ?php $xajaxJSHead = $xajax->getJavascript(); ? >
|
||||
// <head>
|
||||
// ...
|
||||
// < ?php echo $xajaxJSHead; ? >
|
||||
function getJavascript($sJsURI="", $sJsFile=NULL, $sJsFullFilename=NULL)
|
||||
{
|
||||
if ($sJsFile == NULL) $sJsFile = "xajax_js/xajax.js";
|
||||
|
||||
if ($sJsURI != "" && substr($sJsURI, -1) != "/") $sJsURI .= "/";
|
||||
|
||||
$html = "\t<script type=\"text/javascript\">\n";
|
||||
$html .= "var xajaxRequestUri=\"".$this->sRequestURI."\";\n";
|
||||
$html .= "var xajaxDebug=".($this->bDebug?"true":"false").";\n";
|
||||
$html .= "var xajaxStatusMessages=".($this->bStatusMessages?"true":"false").";\n";
|
||||
$html .= "var xajaxWaitCursor=".($this->bWaitCursor?"true":"false").";\n";
|
||||
$html .= "var xajaxDefinedGet=".XAJAX_GET.";\n";
|
||||
$html .= "var xajaxDefinedPost=".XAJAX_POST.";\n";
|
||||
|
||||
foreach($this->aFunctions as $sFunction => $bExists) {
|
||||
$html .= $this->_wrap($sFunction,$this->aFunctionRequestTypes[$sFunction]);
|
||||
}
|
||||
|
||||
$html .= "</script>\n";
|
||||
|
||||
// Create a compressed file if necessary
|
||||
if ($sJsFullFilename) {
|
||||
$realJsFile = $sJsFullFilename;
|
||||
}
|
||||
else {
|
||||
$realPath = realpath(dirname(__FILE__));
|
||||
$realJsFile = $realPath . "/". $sJsFile;
|
||||
}
|
||||
$srcFile = str_replace(".js", "_uncompressed.js", $realJsFile);
|
||||
if (!file_exists($srcFile)) {
|
||||
trigger_error("The xajax uncompressed Javascript file could not be found in the <b>" . dirname($realJsFile) . "</b> folder. Error ", E_USER_ERROR);
|
||||
}
|
||||
|
||||
if ($this->bDebug) {
|
||||
if (!@copy($srcFile, $realJsFile)) {
|
||||
trigger_error("The xajax uncompressed javascript file could not be copied to the <b>" . dirname($realJsFile) . "</b> folder. Error ", E_USER_ERROR);
|
||||
}
|
||||
}
|
||||
else if (!file_exists($realJsFile)) {
|
||||
require(dirname($realJsFile) . "/xajaxCompress.php");
|
||||
$javaScript = implode('', file($srcFile));
|
||||
$compressedScript = xajaxCompressJavascript($javaScript);
|
||||
$fH = @fopen($realJsFile, "w");
|
||||
if (!$fH) {
|
||||
trigger_error("The xajax compressed javascript file could not be written in the <b>" . dirname($realJsFile) . "</b> folder. Error ", E_USER_ERROR);
|
||||
}
|
||||
else {
|
||||
fwrite($fH, $compressedScript);
|
||||
fclose($fH);
|
||||
}
|
||||
}
|
||||
|
||||
$html .= "\t<script type=\"text/javascript\" src=\"" . $sJsURI . $sJsFile . "\"></script>\n";
|
||||
|
||||
return $html;
|
||||
}
|
||||
|
||||
// _detectURL() returns the current URL based upon the SERVER vars
|
||||
// used internally
|
||||
function _detectURI() {
|
||||
$aURL = array();
|
||||
|
||||
// Try to get the request URL
|
||||
if (!empty($_SERVER['REQUEST_URI'])) {
|
||||
$aURL = parse_url($_SERVER['REQUEST_URI']);
|
||||
}
|
||||
|
||||
// Fill in the empty values
|
||||
if (empty($aURL['scheme'])) {
|
||||
if (!empty($_SERVER['HTTP_SCHEME'])) {
|
||||
$aURL['scheme'] = $_SERVER['HTTP_SCHEME'];
|
||||
} else {
|
||||
$aURL['scheme'] = (!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off') ? 'https' : 'http';
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($aURL['host'])) {
|
||||
if (!empty($_SERVER['HTTP_HOST'])) {
|
||||
if (strpos($_SERVER['HTTP_HOST'], ':') > 0) {
|
||||
list($aURL['host'], $aURL['port']) = explode(':', $_SERVER['HTTP_HOST']);
|
||||
} else {
|
||||
$aURL['host'] = $_SERVER['HTTP_HOST'];
|
||||
}
|
||||
} else if (!empty($_SERVER['SERVER_NAME'])) {
|
||||
$aURL['host'] = $_SERVER['SERVER_NAME'];
|
||||
} else {
|
||||
print "xajax Error: xajax failed to automatically identify your Request URI.";
|
||||
print "Please set the Request URI explicitly when you instantiate the xajax object.";
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($aURL['port']) && !empty($_SERVER['SERVER_PORT'])) {
|
||||
$aURL['port'] = $_SERVER['SERVER_PORT'];
|
||||
}
|
||||
|
||||
if (empty($aURL['path'])) {
|
||||
if (!empty($_SERVER['PATH_INFO'])) {
|
||||
$sPath = parse_url($_SERVER['PATH_INFO']);
|
||||
} else {
|
||||
$sPath = parse_url(str_replace(array('"', '<', '>', "'"), '', $_SERVER["PHP_SELF"]));
|
||||
}
|
||||
$aURL['path'] = $sPath['path'];
|
||||
unset($sPath);
|
||||
}
|
||||
|
||||
if (!empty($aURL['query'])) {
|
||||
$aURL['query'] = '?'.$aURL['query'];
|
||||
}
|
||||
|
||||
// Build the URL: Start with scheme, user and pass
|
||||
$sURL = $aURL['scheme'].'://';
|
||||
if (!empty($aURL['user'])) {
|
||||
$sURL.= $aURL['user'];
|
||||
if (!empty($aURL['pass'])) {
|
||||
$sURL.= ':'.$aURL['pass'];
|
||||
}
|
||||
$sURL.= '@';
|
||||
}
|
||||
|
||||
// Add the host
|
||||
$sURL.= $aURL['host'];
|
||||
|
||||
// Add the port if needed
|
||||
if (!empty($aURL['port']) && (($aURL['scheme'] == 'http' && $aURL['port'] != 80) || ($aURL['scheme'] == 'https' && $aURL['port'] != 443))) {
|
||||
$sURL.= ':'.$aURL['port'];
|
||||
}
|
||||
|
||||
// Add the path and the query string
|
||||
$sURL.= $aURL['path'].@$aURL['query'];
|
||||
|
||||
// Clean up
|
||||
unset($aURL);
|
||||
return $sURL;
|
||||
}
|
||||
|
||||
// returns true if the function name is associated with an object callback,
|
||||
// false if not.
|
||||
// user internally
|
||||
function _isObjectCallback($sFunction)
|
||||
{
|
||||
if (array_key_exists($sFunction, $this->aObjects)) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
// return true if the function or object callback can be called, false if not
|
||||
// user internally
|
||||
function _isFunctionCallable($sFunction)
|
||||
{
|
||||
if ($this->_isObjectCallback($sFunction)) {
|
||||
if (is_object($this->aObjects[$sFunction][0])) {
|
||||
return method_exists($this->aObjects[$sFunction][0], $this->aObjects[$sFunction][1]);
|
||||
}
|
||||
else {
|
||||
return is_callable($this->aObjects[$sFunction]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
return function_exists($sFunction);
|
||||
}
|
||||
}
|
||||
|
||||
// calls the function, class method, or object method with the supplied arguments
|
||||
// user internally
|
||||
function _callFunction($sFunction, $aArgs)
|
||||
{
|
||||
if ($this->_isObjectCallback($sFunction)) {
|
||||
$mReturn = call_user_func_array($this->aObjects[$sFunction], $aArgs);
|
||||
}
|
||||
else {
|
||||
$mReturn = call_user_func_array($sFunction, $aArgs);
|
||||
}
|
||||
return $mReturn;
|
||||
}
|
||||
|
||||
// generates the javascript wrapper for the specified PHP function
|
||||
// used internally
|
||||
function _wrap($sFunction,$sRequestType=XAJAX_POST)
|
||||
{
|
||||
$js = "function ".$this->sWrapperPrefix."$sFunction(){return xajax.call(\"$sFunction\", arguments, ".$sRequestType.");}\n";
|
||||
return $js;
|
||||
}
|
||||
|
||||
// _xmlToArray() takes a string containing xajax xjxobj xml or xjxquery xml
|
||||
// and builds an array representation of it to pass as an argument to
|
||||
// the php function being called. Returns an array.
|
||||
// used internally
|
||||
function _xmlToArray($rootTag, $sXml)
|
||||
{
|
||||
$aArray = array();
|
||||
$sXml = str_replace("<$rootTag>","<$rootTag>|~|",$sXml);
|
||||
$sXml = str_replace("</$rootTag>","</$rootTag>|~|",$sXml);
|
||||
$sXml = str_replace("<e>","<e>|~|",$sXml);
|
||||
$sXml = str_replace("</e>","</e>|~|",$sXml);
|
||||
$sXml = str_replace("<k>","<k>|~|",$sXml);
|
||||
$sXml = str_replace("</k>","|~|</k>|~|",$sXml);
|
||||
$sXml = str_replace("<v>","<v>|~|",$sXml);
|
||||
$sXml = str_replace("</v>","|~|</v>|~|",$sXml);
|
||||
$sXml = str_replace("<q>","<q>|~|",$sXml);
|
||||
$sXml = str_replace("</q>","|~|</q>|~|",$sXml);
|
||||
|
||||
$this->aObjArray = explode("|~|",$sXml);
|
||||
|
||||
$this->iPos = 0;
|
||||
$aArray = $this->_parseObjXml($rootTag);
|
||||
|
||||
return $aArray;
|
||||
}
|
||||
|
||||
// _parseObjXml() is a recursive function that generates an array from the
|
||||
// contents of $this->aObjArray. Returns an array.
|
||||
// used internally
|
||||
function _parseObjXml($rootTag)
|
||||
{
|
||||
$aArray = array();
|
||||
|
||||
if ($rootTag == "xjxobj")
|
||||
{
|
||||
while(!stristr($this->aObjArray[$this->iPos],"</xjxobj>"))
|
||||
{
|
||||
$this->iPos++;
|
||||
if(stristr($this->aObjArray[$this->iPos],"<e>"))
|
||||
{
|
||||
$key = "";
|
||||
$value = null;
|
||||
|
||||
$this->iPos++;
|
||||
while(!stristr($this->aObjArray[$this->iPos],"</e>"))
|
||||
{
|
||||
if(stristr($this->aObjArray[$this->iPos],"<k>"))
|
||||
{
|
||||
$this->iPos++;
|
||||
while(!stristr($this->aObjArray[$this->iPos],"</k>"))
|
||||
{
|
||||
$key .= $this->aObjArray[$this->iPos];
|
||||
$this->iPos++;
|
||||
}
|
||||
}
|
||||
if(stristr($this->aObjArray[$this->iPos],"<v>"))
|
||||
{
|
||||
$this->iPos++;
|
||||
while(!stristr($this->aObjArray[$this->iPos],"</v>"))
|
||||
{
|
||||
if(stristr($this->aObjArray[$this->iPos],"<xjxobj>"))
|
||||
{
|
||||
$value = $this->_parseObjXml("xjxobj");
|
||||
$this->iPos++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$value .= $this->aObjArray[$this->iPos];
|
||||
}
|
||||
$this->iPos++;
|
||||
}
|
||||
}
|
||||
$this->iPos++;
|
||||
}
|
||||
|
||||
$aArray[$key]=$value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($rootTag == "xjxquery")
|
||||
{
|
||||
$sQuery = "";
|
||||
$this->iPos++;
|
||||
while(!stristr($this->aObjArray[$this->iPos],"</xjxquery>"))
|
||||
{
|
||||
if (stristr($this->aObjArray[$this->iPos],"<q>") || stristr($this->aObjArray[$this->iPos],"</q>"))
|
||||
{
|
||||
$this->iPos++;
|
||||
continue;
|
||||
}
|
||||
$sQuery .= $this->aObjArray[$this->iPos];
|
||||
$this->iPos++;
|
||||
}
|
||||
|
||||
parse_str($sQuery, $aArray);
|
||||
// If magic quotes is on, then we need to strip the slashes from the
|
||||
// array values because of the parse_str pass which adds slashes
|
||||
if (get_magic_quotes_gpc() == 1) {
|
||||
$newArray = array();
|
||||
foreach ($aArray as $sKey => $sValue) {
|
||||
if (is_string($sValue))
|
||||
$newArray[$sKey] = stripslashes($sValue);
|
||||
else
|
||||
$newArray[$sKey] = $sValue;
|
||||
}
|
||||
$aArray = $newArray;
|
||||
}
|
||||
}
|
||||
|
||||
return $aArray;
|
||||
}
|
||||
|
||||
}// end class xajax
|
||||
|
||||
// xajaxErrorHandler() is registered with PHP's set_error_handler() function if
|
||||
// the xajax error handling system is turned on
|
||||
// used by the xajax class
|
||||
function xajaxErrorHandler($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
$errorReporting = error_reporting();
|
||||
if ($errorReporting == 0) return;
|
||||
|
||||
if ($errno == E_NOTICE) {
|
||||
$errTypeStr = "NOTICE";
|
||||
}
|
||||
else if ($errno == E_WARNING) {
|
||||
$errTypeStr = "WARNING";
|
||||
}
|
||||
else if ($errno == E_USER_NOTICE) {
|
||||
$errTypeStr = "USER NOTICE";
|
||||
}
|
||||
else if ($errno == E_USER_WARNING) {
|
||||
$errTypeStr = "USER WARNING";
|
||||
}
|
||||
else if ($errno == E_USER_ERROR) {
|
||||
$errTypeStr = "USER FATAL ERROR";
|
||||
}
|
||||
else if ($errno == E_STRICT) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
$errTypeStr = "UNKNOWN: $errno";
|
||||
}
|
||||
$GLOBALS['xajaxErrorHandlerText'] .= "\n----\n[$errTypeStr] $errstr\nerror in line $errline of file $errfile";
|
||||
}
|
||||
|
||||
?>
|
||||
301
www/-installation-/includes/xajax/xajaxResponse.inc.php
Normal file
@ -0,0 +1,301 @@
|
||||
<?php
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// xajaxResponse.inc.php::xajax XML response class
|
||||
//
|
||||
// xajax version 0.2
|
||||
// Copyright (C) 2005 - 2006 by Jared White & J. Max Wilson
|
||||
// http://www.xajaxproject.org
|
||||
//
|
||||
// xajax is an open source PHP class library for easily creating powerful
|
||||
// PHP-driven, web-based Ajax Applications. Using xajax, you can asynchronously
|
||||
// call PHP functions and update the content of your your webpage without
|
||||
// reloading the page.
|
||||
//
|
||||
// xajax is released under the terms of the LGPL license
|
||||
// http://www.gnu.org/copyleft/lesser.html#SEC3
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/*
|
||||
----------------------------------------------------------------------------
|
||||
| Online documentation for this class is available on the xajax wiki at: |
|
||||
| http://wiki.xajaxproject.org/Documentation:xajaxResponse.inc.php |
|
||||
----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
// The xajaxResponse class is used to created responses to be sent back to your
|
||||
// webpage. A response contains one or more command messages for updating your page.
|
||||
// Currently xajax supports 17 kinds of command messages, including some common ones such as:
|
||||
// * Assign - sets the specified attribute of an element in your page
|
||||
// * Append - appends data to the end of the specified attribute of an element in your page
|
||||
// * Prepend - prepends data to the beginning of the specified attribute of an element in your page
|
||||
// * Replace - searches for and replaces data in the specified attribute of an element in your page
|
||||
// * Script - runs the supplied JavaScript code
|
||||
// * Alert - shows an alert box with the supplied message text
|
||||
//
|
||||
// *Note: elements are identified by their HTML id, so if you don't see your browser HTML display changing from the request, make sure you're using the right id names in your response.
|
||||
|
||||
class xajaxResponse
|
||||
{
|
||||
var $xml;
|
||||
var $sEncoding;
|
||||
|
||||
// Constructor. Its main job is to set the character encoding for the response.
|
||||
// $sEncoding is a string containing the character encoding string to use.
|
||||
// * Note: to change the character encoding for all of the responses, set the
|
||||
// XAJAX_DEFAULT_ENCODING constant near the beginning of the xajax.inc.php file
|
||||
function xajaxResponse($sEncoding=XAJAX_DEFAULT_CHAR_ENCODING)
|
||||
{
|
||||
$this->setCharEncoding($sEncoding);
|
||||
}
|
||||
|
||||
// setCharEncoding() sets the character encoding for the response based on
|
||||
// $sEncoding, which is a string containing the character encoding to use. You
|
||||
// don't need to use this method normally, since the character encoding for the
|
||||
// response gets set automatically based on the XAJAX_DEFAULT_CHAR_ENCODING
|
||||
// constant.
|
||||
function setCharEncoding($sEncoding)
|
||||
{
|
||||
$this->sEncoding = $sEncoding;
|
||||
}
|
||||
|
||||
// addAssign() adds an assign command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.)
|
||||
// $sData is the data you want to set the attribute to
|
||||
// usage: $objResponse->addAssign("contentDiv", "innerHTML", "Some Text");
|
||||
function addAssign($sTarget,$sAttribute,$sData)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"as","t"=>$sTarget,"p"=>$sAttribute),$sData);
|
||||
}
|
||||
|
||||
// addAppend() adds an append command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.)
|
||||
// $sData is the data you want to append to the end of the attribute
|
||||
// usage: $objResponse->addAppend("contentDiv", "innerHTML", "Some New Text");
|
||||
function addAppend($sTarget,$sAttribute,$sData)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ap","t"=>$sTarget,"p"=>$sAttribute),$sData);
|
||||
}
|
||||
|
||||
// addPrepend() adds an prepend command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.)
|
||||
// $sData is the data you want to prepend to the beginning of the attribute
|
||||
// usage: $objResponse->addPrepend("contentDiv", "innerHTML", "Some Starting Text");
|
||||
function addPrepend($sTarget,$sAttribute,$sData)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"pp","t"=>$sTarget,"p"=>$sAttribute),$sData);
|
||||
}
|
||||
|
||||
// addReplace() adds an replace command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.)
|
||||
// $sSearch is a string to search for
|
||||
// $sData is a string to replace the search string when found in the attribute
|
||||
// usage: $objResponse->addReplace("contentDiv", "innerHTML", "text", "<b>text</b>");
|
||||
function addReplace($sTarget,$sAttribute,$sSearch,$sData)
|
||||
{
|
||||
$sDta = "<s><![CDATA[$sSearch]]></s><r><![CDATA[$sData]]></r>";
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"rp","t"=>$sTarget,"p"=>$sAttribute),$sDta);
|
||||
}
|
||||
|
||||
// addClear() adds an clear command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sAttribute is the part of the element you wish to clear ("innerHTML", "value", etc.)
|
||||
// usage: $objResponse->addClear("contentDiv", "innerHTML");
|
||||
function addClear($sTarget,$sAttribute)
|
||||
{
|
||||
$this->addAssign($sTarget,$sAttribute,'');
|
||||
}
|
||||
|
||||
// addAlert() adds an alert command message to the XML response
|
||||
// $sMsg is the text to be displayed in the Javascript alert box
|
||||
// usage: $objResponse->addAlert("This is important information");
|
||||
function addAlert($sMsg)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"al"),$sMsg);
|
||||
}
|
||||
|
||||
// addRedirect() uses the addScript() method to add a Javascript redirect to
|
||||
// another URL
|
||||
// $sURL is the URL to redirect the client browser to
|
||||
// usage: $objResponse->addRedirect("http://www.xajaxproject.org");
|
||||
function addRedirect($sURL)
|
||||
{
|
||||
$this->addScript('window.location = "'.rawurlencode($sURL).'";');
|
||||
}
|
||||
|
||||
// addScript() adds a Javascript command message to the XML response
|
||||
// $sJS is a string containing Javascript code to be executed
|
||||
// usage: $objResponse->addScript("var x = prompt('get some text');");
|
||||
function addScript($sJS)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"js"),$sJS);
|
||||
}
|
||||
|
||||
// addRemove() adds a remove element command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element to be removed
|
||||
// from your page
|
||||
// usage: $objResponse->addRemove("Div2");
|
||||
function addRemove($sTarget)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"rm","t"=>$sTarget),'');
|
||||
}
|
||||
|
||||
// addCreate() adds a create element command message to the XML response
|
||||
// $sParent is a string containing the id of an HTML element to which the new
|
||||
// element will be appended.
|
||||
// $sTag is the tag to be added
|
||||
// $sId is the id to be assigned to the new element
|
||||
// $sType has been deprecated, use the addCreateInput() method instead
|
||||
// usage: $objResponse->addCreate("parentDiv", "h3", "myid");
|
||||
function addCreate($sParent, $sTag, $sId, $sType="")
|
||||
{
|
||||
if ($sType)
|
||||
{
|
||||
trigger_error("The \$sType parameter of addCreate has been deprecated. Use the addCreateInput() method instead.", E_USER_WARNING);
|
||||
return;
|
||||
}
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ce","t"=>$sParent,"p"=>$sId),$sTag);
|
||||
}
|
||||
|
||||
// addInsert() adds an insert element command message to the XML response
|
||||
// $sBefore is a string containing the id of the child before which the new element
|
||||
// will be inserted
|
||||
// $sTag is the tag to be added
|
||||
// $sId is the id to be assigned to the new element
|
||||
// usage: $objResponse->addInsert("childDiv", "h3", "myid");
|
||||
function addInsert($sBefore, $sTag, $sId)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ie","t"=>$sBefore,"p"=>$sId),$sTag);
|
||||
}
|
||||
|
||||
// addCreateInput() adds a create input command message to the XML response
|
||||
// $sParent is a string containing the id of an HTML element to which the new
|
||||
// input will be appended
|
||||
// $sType is the type of input to be created (text, radio, checkbox, etc.)
|
||||
// $sName is the name to be assigned to the new input and the variable name when it is submitted
|
||||
// $sId is the id to be assigned to the new input
|
||||
// usage: $objResponse->addCreateInput("form1", "text", "username", "input1");
|
||||
function addCreateInput($sParent, $sType, $sName, $sId)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ci","t"=>$sParent,"p"=>$sId,"c"=>$sType),$sName);
|
||||
}
|
||||
|
||||
// addInsertInput() adds an insert input command message to the XML response
|
||||
// $sBefore is a string containing the id of the child before which the new element
|
||||
// will be inserted
|
||||
// $sType is the type of input to be created (text, radio, checkbox, etc.)
|
||||
// $sName is the name to be assigned to the new input and the variable name when it is submitted
|
||||
// $sId is the id to be assigned to the new input
|
||||
// usage: $objResponse->addInsertInput("input5", "text", "username", "input1");
|
||||
function addInsertInput($sBefore, $sType, $sName, $sId)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ii","t"=>$sBefore,"p"=>$sId,"c"=>$sType),$sName);
|
||||
}
|
||||
|
||||
// addEvent() adds an event command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sEvent is the event you wish to set ("click", "mouseover", etc.)
|
||||
// $sScript is the Javascript string you want to the event to invoke
|
||||
// usage: $objResponse->addEvent("contentDiv", "click", "alert(\'Hello World\');");
|
||||
function addEvent($sTarget,$sEvent,$sScript)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ev","t"=>$sTarget,"p"=>$sEvent),$sScript);
|
||||
}
|
||||
|
||||
// addHandler() adds a handler command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sEvent is the event you wish to set ("click", "mouseover", etc.)
|
||||
// $sHandler is a string containing the name of a Javascript function
|
||||
// that will handle the event. Multiple handlers can be added for the same event
|
||||
// usage: $objResponse->addHandler("contentDiv", "click", "content_click");
|
||||
function addHandler($sTarget,$sEvent,$sHandler)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"ah","t"=>$sTarget,"p"=>$sEvent),$sHandler);
|
||||
}
|
||||
|
||||
// addRemoveHandler() adds a remove handler command message to the XML response
|
||||
// $sTarget is a string containing the id of an HTML element
|
||||
// $sEvent is the event you wish to remove ("click", "mouseover", etc.)
|
||||
// $sHandler is a string containing the name of a Javascript handler function
|
||||
// that you want to remove
|
||||
// usage: $objResponse->addRemoveHandler("contentDiv", "click", "content_click");
|
||||
function addRemoveHandler($sTarget,$sEvent,$sHandler)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"rh","t"=>$sTarget,"p"=>$sEvent),$sHandler);
|
||||
}
|
||||
|
||||
// addIncludeScript() adds an include script command message to the XML response
|
||||
// $sFileName is a URL of the Javascript file to include
|
||||
// usage: $objResponse->addIncludeScript("functions.js");
|
||||
function addIncludeScript($sFileName)
|
||||
{
|
||||
$this->xml .= $this->_cmdXML(array("n"=>"in"),$sFileName);
|
||||
}
|
||||
|
||||
// getXML() returns the XML to be returned from your function to the xajax
|
||||
// processor on your page. Since xajax 0.2, you can also return an xajaxResponse
|
||||
// object from your function directly, and xajax will automatically request the
|
||||
// XML using this method call.
|
||||
// usage: return $objResponse->getXML();
|
||||
function getXML()
|
||||
{
|
||||
$sXML = "<?xml version=\"1.0\"";
|
||||
if ($this->sEncoding && strlen(trim($this->sEncoding)) > 0)
|
||||
$sXML .= " encoding=\"".$this->sEncoding."\"";
|
||||
$sXML .= " ?"."><xjx>" . $this->xml . "</xjx>";
|
||||
|
||||
return $sXML;
|
||||
}
|
||||
|
||||
// loadXML() adds the commands of the provided response XML output to this
|
||||
// response object
|
||||
// $sXML is the response XML (returned from a getXML() method) to add to the
|
||||
// end of this response object
|
||||
// usage: $r1 = $objResponse1->getXML();
|
||||
// $objResponse2->loadXML($r1);
|
||||
// return $objResponse2->getXML();
|
||||
function loadXML($sXML)
|
||||
{
|
||||
$sNewXML = "";
|
||||
$iStartPos = strpos($sXML, "<xjx>") + 5;
|
||||
$sNewXML = substr($sXML, $iStartPos);
|
||||
$iEndPos = strpos($sNewXML, "</xjx>");
|
||||
$sNewXML = substr($sNewXML, 0, $iEndPos);
|
||||
$this->xml .= $sNewXML;
|
||||
}
|
||||
|
||||
// private method, used internally
|
||||
function _cmdXML($aAttributes, $sData)
|
||||
{
|
||||
$xml = "<cmd";
|
||||
foreach($aAttributes as $sAttribute => $sValue)
|
||||
$xml .= " $sAttribute=\"$sValue\"";
|
||||
if ($sData && !stristr($sData,'<![CDATA['))
|
||||
$xml .= "><![CDATA[$sData]]></cmd>";
|
||||
else if ($sData)
|
||||
$xml .= ">$sData</cmd>";
|
||||
else
|
||||
$xml .= "></cmd>";
|
||||
|
||||
return $xml;
|
||||
}
|
||||
|
||||
}// end class xajaxResponse
|
||||
?>
|
||||
36
www/-installation-/index.php
Normal file
@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: index.php 10381 2008-06-01 03:35:53Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software and parts of it may contain or be derived from the
|
||||
* GNU General Public License or other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
define( '_JEXEC', 1 );
|
||||
|
||||
define( 'JPATH_BASE', dirname( __FILE__ ) );
|
||||
|
||||
define( 'DS', DIRECTORY_SEPARATOR );
|
||||
|
||||
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
|
||||
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
|
||||
|
||||
// create the mainframe object
|
||||
$mainframe =& JFactory::getApplication('installation');
|
||||
|
||||
// initialuse the application
|
||||
$mainframe->initialise();
|
||||
|
||||
// render the application
|
||||
$mainframe->render();
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* RETURN THE RESPONSE
|
||||
*/
|
||||
echo JResponse::toString();
|
||||
393
www/-installation-/installer/controller.php
Normal file
@ -0,0 +1,393 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @version $Id: controller.php 10381 2008-06-01 03:35:53Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
/**
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
*/
|
||||
|
||||
jimport('joomla.application.component.controller');
|
||||
require_once( dirname(__FILE__).DS.'models'.DS.'model.php');
|
||||
require_once( dirname(__FILE__).DS.'views'.DS.'install'.DS.'view.php');
|
||||
|
||||
class JInstallationController extends JController
|
||||
{
|
||||
var $_model = null;
|
||||
|
||||
var $_view = null;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
function __construct( $config = array() )
|
||||
{
|
||||
$config['name'] = 'JInstallation';
|
||||
parent::__construct( $config );
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function dbconfig()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->dbConfig() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->dbConfig();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Overload the parent controller method to add a check for configuration variables
|
||||
* when a task has been provided
|
||||
*
|
||||
* @param String $task Task to perform
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function execute($task)
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
// Sanity check
|
||||
if ( $task && ( $task != 'lang' ) && ( $task != 'removedir' ) )
|
||||
{
|
||||
|
||||
/**
|
||||
* To get past this point, a cookietest must be carried in the user's state.
|
||||
* If the state is not set, then cookies are probably disabled.
|
||||
**/
|
||||
|
||||
$goodEnoughForMe = $mainframe->getUserState('application.cookietest');
|
||||
|
||||
if ( ! $goodEnoughForMe )
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$model->setError(JText::_('WARNCOOKIESNOTENABLED'));
|
||||
$view =& $this->getView();
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
// Zilch the application registry - start from scratch
|
||||
$session =& JFactory::getSession();
|
||||
$registry =& $session->get('registry');
|
||||
$registry->makeNameSpace('application');
|
||||
|
||||
// Set the cookie test seed
|
||||
$mainframe->setUserState('application.cookietest', 1);
|
||||
}
|
||||
|
||||
parent::execute($task);
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialize data for the installation
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function initialize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Present form for FTP information
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function ftpconfig()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->ftpConfig() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->ftpConfig();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the model for the installer component
|
||||
*
|
||||
* @return JInstallerModel
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getModel()
|
||||
{
|
||||
|
||||
if ( ! $this->_model )
|
||||
{
|
||||
$this->_model = new JInstallationModel();
|
||||
}
|
||||
|
||||
return $this->_model;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the view for the installer component
|
||||
*
|
||||
* @return JInstallerView
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getView()
|
||||
{
|
||||
|
||||
if ( ! $this->_view )
|
||||
{
|
||||
$this->_view = new JInstallationView();
|
||||
$model =& $this->getModel();
|
||||
$model->test = "blah";
|
||||
$this->_view->setModel($model, true);
|
||||
}
|
||||
|
||||
return $this->_view;
|
||||
}
|
||||
|
||||
/**
|
||||
* Present license information
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function license()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->license() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->license();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Present a choice of languages
|
||||
*
|
||||
* Step One!
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function lang()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->chooseLanguage() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->chooseLanguage();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function makedb()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->makeDB())
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
if ( ! $model->ftpConfig( 1 ) )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->ftpConfig();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Present the main configuration options
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function mainconfig()
|
||||
{
|
||||
//$this->dumpLoad();
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->mainConfig() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->mainConfig();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Present a preinstall check
|
||||
*
|
||||
* Step Two!
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function preinstall()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->preInstall() )
|
||||
{
|
||||
$view->error();
|
||||
return true;
|
||||
}
|
||||
|
||||
$view->preInstall();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove directory messages
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function removedir()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->removedir() )
|
||||
{
|
||||
$view->error();
|
||||
return true;
|
||||
}
|
||||
|
||||
$view->removedir();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function saveconfig()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
|
||||
if ( ! $model->saveConfig() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
if ( ! $model->finish() )
|
||||
{
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->finish();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function dumpLoad() {
|
||||
$model =& $this->getModel();
|
||||
$model->dumpLoad();
|
||||
|
||||
}
|
||||
|
||||
function migration() {
|
||||
$model =& $this->getModel();
|
||||
$model->setData('back', 'mainconfig');
|
||||
$view =& $this->getView();
|
||||
if(!$model->checkUpload()) {
|
||||
$view->error();
|
||||
return false;
|
||||
}
|
||||
|
||||
$view->migrateScreen();
|
||||
return true;
|
||||
}
|
||||
|
||||
function postmigrate() {
|
||||
$model =& $this->getModel();
|
||||
$view =& $this->getView();
|
||||
if($model->postMigrate()) {
|
||||
// errors!
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
1463
www/-installation-/installer/helper.php
Normal file
1
www/-installation-/installer/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
42
www/-installation-/installer/installer.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @version $Id: installer.php 10381 2008-06-01 03:35:53Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
$here = dirname(__FILE__);
|
||||
require_once( $here.DS.'controller.php');
|
||||
require_once( $here.DS.'helper.php');
|
||||
|
||||
// Get the controller
|
||||
$config = array();
|
||||
|
||||
// check on proper task:
|
||||
// lang for installation
|
||||
// removedir for remove directory message
|
||||
if (file_exists( JPATH_CONFIGURATION . DS . 'configuration.php' ) && (filesize( JPATH_CONFIGURATION . DS . 'configuration.php' ) > 10) && file_exists( JPATH_INSTALLATION . DS . 'index.php' )) {
|
||||
$config['default_task'] = 'removedir';
|
||||
} else {
|
||||
$config['default_task'] = 'lang';
|
||||
}
|
||||
$controller = new JInstallationController($config);
|
||||
$controller->initialize();
|
||||
|
||||
// Set some paths
|
||||
$controller->addViewPath ( $here.DS.'views' );
|
||||
$controller->addModelPath( $here.DS.'models' );
|
||||
|
||||
// Process the request
|
||||
$task = JRequest::getCmd( 'task' );
|
||||
$controller->execute( $task );
|
||||
368
www/-installation-/installer/jajax.php
Normal file
@ -0,0 +1,368 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: jajax.php 10833 2008-08-28 10:37:50Z eddieajau $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
define( '_JEXEC', 1 );
|
||||
|
||||
//Global definitions
|
||||
define( 'DS', DIRECTORY_SEPARATOR );
|
||||
|
||||
//Joomla framework path definitions
|
||||
$parts = explode( DS, dirname(__FILE__) );
|
||||
|
||||
array_pop( $parts );
|
||||
define( 'JPATH_BASE', implode( DS, $parts ) );
|
||||
array_pop( $parts );
|
||||
|
||||
define( 'JPATH_ROOT', implode( DS, $parts ) );
|
||||
define( 'JPATH_SITE', JPATH_ROOT );
|
||||
define( 'JPATH_CONFIGURATION', JPATH_ROOT );
|
||||
define( 'JPATH_LIBRARIES', JPATH_ROOT . DS . 'libraries' );
|
||||
|
||||
define( 'JXPATH_BASE', JPATH_BASE.DS.'includes' );
|
||||
|
||||
// Make sure that Joomla! is not yet installed
|
||||
if (file_exists(JPATH_CONFIGURATION.DS.'configuration.php') && (filesize(JPATH_CONFIGURATION.DS.'configuration.php') > 10)) {
|
||||
header( 'Location: ../../index.php' );
|
||||
exit();
|
||||
}
|
||||
|
||||
// System includes
|
||||
require_once( JPATH_LIBRARIES .DS.'joomla'.DS.'import.php');
|
||||
|
||||
require_once( JPATH_BASE . DS. 'installer' . DS . 'helper.php' );
|
||||
// Require the xajax library
|
||||
require_once (JXPATH_BASE.DS.'xajax'.DS.'xajax.inc.php');
|
||||
$xajax = new xajax();
|
||||
$xajax->errorHandlerOn();
|
||||
|
||||
$xajax->registerFunction(array('getFtpRoot', 'JAJAXHandler', 'ftproot'));
|
||||
$xajax->registerFunction(array('FTPVerify', 'JAJAXHandler', 'ftpverify'));
|
||||
$xajax->registerFunction(array('instDefault', 'JAJAXHandler', 'sampledata'));
|
||||
|
||||
JError::setErrorHandling(E_ERROR, 'callback', array('JAJAXHandler','handleError'));
|
||||
JError::setErrorHandling(E_WARNING, 'callback', array('JAJAXHandler','handleError'));
|
||||
JError::setErrorHandling(E_NOTICE, 'callback', array('JAJAXHandler','handleError'));
|
||||
require_once(JPATH_SITE.DS.'libraries'.DS.'joomla'.DS.'utilities'.DS.'compat'.DS.'compat.php');
|
||||
|
||||
/**
|
||||
* AJAX Task handler class
|
||||
*
|
||||
* @static
|
||||
* @package Joomla
|
||||
* @subpackage Installer
|
||||
* @since 1.5
|
||||
*/
|
||||
class JAJAXHandler
|
||||
{
|
||||
/**
|
||||
* Method to get the path from the FTP root to the Joomla root directory
|
||||
*/
|
||||
function ftproot($args)
|
||||
{
|
||||
jimport( 'joomla.application.application' );
|
||||
jimport( 'joomla.registry.registry' );
|
||||
|
||||
$lang = new JAJAXLang($args['lang']);
|
||||
// $lang->setDebug(true);
|
||||
|
||||
$objResponse = new xajaxResponse();
|
||||
$args = $args['vars'];
|
||||
|
||||
$root = JInstallationHelper::findFtpRoot($args['ftpUser'], $args['ftpPassword'], $args['ftpHost'], $args['ftpPort']);
|
||||
if (JError::isError($root)) {
|
||||
$objResponse->addScript('document.getElementById(\'ftpdisable\').checked = true;');
|
||||
$objResponse->addAlert($lang->_($root->get('message')));
|
||||
} else {
|
||||
$objResponse->addAssign('ftproot', 'value', $root);
|
||||
$objResponse->addAssign('rootPath', 'style.display', '');
|
||||
$objResponse->addScript('document.getElementById(\'verifybutton\').click();');
|
||||
}
|
||||
|
||||
return $objResponse;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to verify the ftp values are valid
|
||||
*/
|
||||
function ftpverify($args)
|
||||
{
|
||||
jimport( 'joomla.application.application' );
|
||||
jimport( 'joomla.registry.registry' );
|
||||
|
||||
$lang = new JAJAXLang($args['lang']);
|
||||
// $lang->setDebug(true);
|
||||
|
||||
$objResponse = new xajaxResponse();
|
||||
$args = $args['vars'];
|
||||
|
||||
$status = JInstallationHelper::FTPVerify($args['ftpUser'], $args['ftpPassword'], $args['ftpRoot'], $args['ftpHost'], $args['ftpPort']);
|
||||
if (JError::isError($status)) {
|
||||
if (($msg = $status->get('message')) != 'INVALIDROOT') {
|
||||
$msg = $lang->_('INVALIDFTP') ."\n". $lang->_($msg);
|
||||
} else {
|
||||
$msg = $lang->_($msg);
|
||||
}
|
||||
$objResponse->addScript('document.getElementById(\'ftpdisable\').checked = true;');
|
||||
$objResponse->addAlert($msg);
|
||||
} else {
|
||||
$objResponse->addScript('document.getElementById(\'ftpenable\').checked = true;');
|
||||
$objResponse->addAlert($lang->_('VALIDFTP'));
|
||||
}
|
||||
|
||||
return $objResponse;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to load and execute a sql script
|
||||
*/
|
||||
function sampledata($args)
|
||||
{
|
||||
jimport( 'joomla.database.database');
|
||||
jimport( 'joomla.language.language');
|
||||
jimport( 'joomla.registry.registry');
|
||||
|
||||
|
||||
$errors = null;
|
||||
$msg = '';
|
||||
$objResponse = new xajaxResponse();
|
||||
$lang = new JAJAXLang($args['lang']);
|
||||
// $lang->setDebug(true);
|
||||
|
||||
/*
|
||||
* execute the default sample data file
|
||||
*/
|
||||
$type = $args['DBtype'];
|
||||
if ($type == 'mysqli') {
|
||||
$type = 'mysql';
|
||||
}
|
||||
$dbsample = '../sql'.DS.$type.DS.'sample_data.sql';
|
||||
|
||||
$db = & JInstallationHelper::getDBO($args['DBtype'], $args['DBhostname'], $args['DBuserName'], $args['DBpassword'], $args['DBname'], $args['DBPrefix']);
|
||||
$result = JInstallationHelper::populateDatabase($db, $dbsample, $errors);
|
||||
|
||||
/*
|
||||
* prepare sql error messages if returned from populate
|
||||
*/
|
||||
if (!is_null($errors)){
|
||||
foreach($errors as $error){
|
||||
$msg .= stripslashes( $error['msg'] );
|
||||
$msg .= chr(13)."-------------".chr(13);
|
||||
$txt = '<textarea cols="35" rows="5" name="instDefault" readonly="readonly" >'.$lang->_('Database Errors Reported').chr(13).$msg.'</textarea>';
|
||||
}
|
||||
} else {
|
||||
// consider other possible errors from populate
|
||||
$msg = $result == 0 ? $lang->_("Sample data installed successfully") : $lang->_("Error installing SQL script") ;
|
||||
$txt = '<input size="35" name="instDefault" value="'.$msg.'" readonly="readonly" />';
|
||||
}
|
||||
|
||||
$objResponse->addAssign("theDefault", "innerHTML", $txt);
|
||||
return $objResponse;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle a raised error : for now just silently return
|
||||
*
|
||||
* @access private
|
||||
* @param object $error JError object
|
||||
* @return object $error JError object
|
||||
* @since 1.5
|
||||
*/
|
||||
function &handleError(&$error)
|
||||
{
|
||||
return $error;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Languages/translation handler class
|
||||
*
|
||||
* @package Joomla.Framework
|
||||
* @subpackage I18N
|
||||
* @since 1.5
|
||||
*/
|
||||
class JAJAXLang extends JObject
|
||||
{
|
||||
/**
|
||||
* Debug language, If true, highlights if string isn't found
|
||||
*
|
||||
* @var boolean
|
||||
* @access protected
|
||||
*/
|
||||
var $_debug = false;
|
||||
|
||||
/**
|
||||
* Identifying string of the language
|
||||
*
|
||||
* @var string
|
||||
* @access protected
|
||||
*/
|
||||
var $_identifyer = null;
|
||||
|
||||
/**
|
||||
* The language to load
|
||||
*
|
||||
* @var string
|
||||
* @access protected
|
||||
*/
|
||||
var $_lang = null;
|
||||
|
||||
/**
|
||||
* Transaltions
|
||||
*
|
||||
* @var array
|
||||
* @access protected
|
||||
*/
|
||||
var $_strings = null;
|
||||
|
||||
/**
|
||||
* Constructor activating the default information of the language
|
||||
*
|
||||
* @access protected
|
||||
*/
|
||||
function __construct($lang = null)
|
||||
{
|
||||
$this->_strings = array ();
|
||||
|
||||
if ($lang == null) {
|
||||
$lang = 'en-GB';
|
||||
}
|
||||
|
||||
$this->_lang= $lang;
|
||||
|
||||
$this->load();
|
||||
}
|
||||
|
||||
/**
|
||||
* Translator function, mimics the php gettext (alias _) function
|
||||
*
|
||||
* @access public
|
||||
* @param string $string The string to translate
|
||||
* @param boolean $jsSafe Make the result javascript safe
|
||||
* @return string The translation of the string
|
||||
*/
|
||||
function _($string, $jsSafe = false)
|
||||
{
|
||||
//$key = str_replace( ' ', '_', strtoupper( trim( $string ) ) );echo '<br />'.$key;
|
||||
$key = strtoupper($string);
|
||||
$key = substr($key, 0, 1) == '_' ? substr($key, 1) : $key;
|
||||
if (isset ($this->_strings[$key])) {
|
||||
$string = $this->_debug ? "•".$this->_strings[$key]."•" : $this->_strings[$key];
|
||||
} else {
|
||||
if (defined($string)) {
|
||||
$string = $this->_debug ? "!!".constant($string)."!!" : constant($string);
|
||||
} else {
|
||||
$string = $this->_debug ? "??".$string."??" : $string;
|
||||
}
|
||||
}
|
||||
if ($jsSafe) {
|
||||
$string = addslashes($string);
|
||||
}
|
||||
return $string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads a single language file and appends the results to the existing strings
|
||||
*
|
||||
* @access public
|
||||
* @param string $prefix The prefix
|
||||
* @param string $basePath The basepath to use
|
||||
* $return boolean True, if the file has successfully loaded.
|
||||
*/
|
||||
function load( $prefix = '', $basePath = JPATH_BASE )
|
||||
{
|
||||
$path = JAJAXLang::getLanguagePath( $basePath, $this->_lang);
|
||||
|
||||
$filename = empty( $prefix ) ? $this->_lang : $this->_lang . '.' . $prefix ;
|
||||
|
||||
$result = false;
|
||||
|
||||
$newStrings = $this->_load( $path.DS.$filename.'.ini' );
|
||||
|
||||
if (is_array($newStrings)) {
|
||||
$this->_strings = array_merge( $this->_strings, $newStrings);
|
||||
$result = true;
|
||||
}
|
||||
|
||||
return $result;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads a language file and returns the parsed values
|
||||
*
|
||||
* @access private
|
||||
* @param string The name of the file
|
||||
* @return mixed Array of parsed values if successful, boolean False if failed
|
||||
*/
|
||||
function _load( $filename )
|
||||
{
|
||||
if ($content = @file_get_contents( $filename )) {
|
||||
if( $this->_identifyer === null ) {
|
||||
$this->_identifyer = basename( $filename, '.ini' );
|
||||
}
|
||||
|
||||
$registry = new JRegistry();
|
||||
$registry->loadINI($content);
|
||||
return $registry->toArray( );
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the Debug property
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function setDebug($debug) {
|
||||
$this->_debug = $debug;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines is a key exists
|
||||
*
|
||||
* @access public
|
||||
* @param key $key The key to check
|
||||
* @return boolean True, if the key exists
|
||||
*/
|
||||
function hasKey($key) {
|
||||
return isset ($this->_strings[strtoupper($key)]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the path to a language
|
||||
*
|
||||
* @access public
|
||||
* @param string $basePath The basepath to use
|
||||
* @param string $language The language tag
|
||||
* @return string language related path or null
|
||||
*/
|
||||
function getLanguagePath($basePath = JPATH_BASE, $language = null )
|
||||
{
|
||||
$dir = $basePath.DS.'language';
|
||||
if (isset ($language)) {
|
||||
$dir .= DS.$language;
|
||||
}
|
||||
return $dir;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Process the AJAX requests
|
||||
*/
|
||||
$xajax->cleanBufferOff(); //Needed for suPHP compilance
|
||||
$xajax->processRequests();
|
||||
1
www/-installation-/installer/models/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
956
www/-installation-/installer/models/model.php
Normal file
@ -0,0 +1,956 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @version $Id: model.php 12694 2009-09-11 21:03:02Z ian $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
/**
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
*/
|
||||
|
||||
jimport('joomla.application.component.model');
|
||||
|
||||
class JInstallationModel extends JModel
|
||||
{
|
||||
/**
|
||||
* Array used to store data between model and view
|
||||
*
|
||||
* @var Array
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
var $data = array();
|
||||
|
||||
/**
|
||||
* Array used to store user input created during the installation process
|
||||
*
|
||||
* @var Array
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
var $vars = array();
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
function __construct($config = array())
|
||||
{
|
||||
$this->_state = new JObject();
|
||||
//set the view name
|
||||
if (empty( $this->_name ))
|
||||
{
|
||||
if (isset($config['name'])) {
|
||||
$this->_name = $config['name'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$r = null;
|
||||
if (!preg_match('/Model(.*)/i', get_class($this), $r)) {
|
||||
JError::raiseError (500, "JModel::__construct() : Can't get or parse class name.");
|
||||
}
|
||||
$this->_name = strtolower( $r[1] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a panel of language choices for the user to select their language
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function chooseLanguage()
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
|
||||
jimport('joomla.language.helper');
|
||||
$native = JLanguageHelper::detectLanguage();
|
||||
$forced = $mainframe->getLocalise();
|
||||
|
||||
if ( !empty( $forced['lang'] ) ){
|
||||
$native = $forced['lang'];
|
||||
}
|
||||
|
||||
$lists = array ();
|
||||
$lists['langs'] = JLanguageHelper::createLanguageList($native);
|
||||
|
||||
$this->setData('lists', $lists);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the parameters for database creation
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function dbConfig()
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
|
||||
if (!isset ($vars['DBPrefix'])) {
|
||||
$vars['DBPrefix'] = 'jos_';
|
||||
}
|
||||
|
||||
$lists = array ();
|
||||
$files = array ('mysql', 'mysqli',);
|
||||
$db = JInstallationHelper::detectDB();
|
||||
foreach ($files as $file)
|
||||
{
|
||||
$option = array ();
|
||||
$option['text'] = $file;
|
||||
if (strcasecmp($option['text'], $db) == 0)
|
||||
{
|
||||
$option['selected'] = 'selected="true"';
|
||||
}
|
||||
$lists['dbTypes'][] = $option;
|
||||
}
|
||||
|
||||
$doc =& JFactory::getDocument();
|
||||
|
||||
$this->setData('lists', $lists);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Displays the finish screen
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function finish()
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
|
||||
$vars['siteurl'] = JURI::root();
|
||||
$vars['adminurl'] = $vars['siteurl'].'administrator/';
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets ftp configuration parameters
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function ftpConfig($DBcreated = '0')
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
|
||||
// Require the xajax library
|
||||
require_once( JPATH_BASE.DS.'includes'.DS.'xajax'.DS.'xajax.inc.php' );
|
||||
|
||||
// Instantiate the xajax object and register the function
|
||||
$xajax = new xajax(JURI::base().'installer/jajax.php');
|
||||
$xajax->registerFunction(array('getFtpRoot', 'JAJAXHandler', 'ftproot'));
|
||||
$xajax->registerFunction(array('FTPVerify', 'JAJAXHandler', 'ftpverify'));
|
||||
//$xajax->debugOn();
|
||||
|
||||
$vars['DBcreated'] = JArrayHelper::getValue($vars, 'DBcreated', $DBcreated);
|
||||
$strip = get_magic_quotes_gpc();
|
||||
|
||||
if (!isset ($vars['ftpEnable'])) {
|
||||
$vars['ftpEnable'] = '1';
|
||||
}
|
||||
if (!isset ($vars['ftpHost'])) {
|
||||
$vars['ftpHost'] = '127.0.0.1';
|
||||
}
|
||||
if (!isset ($vars['ftpPort'])) {
|
||||
$vars['ftpPort'] = '21';
|
||||
}
|
||||
if (!isset ($vars['ftpUser'])) {
|
||||
$vars['ftpUser'] = '';
|
||||
}
|
||||
if (!isset ($vars['ftpPassword'])) {
|
||||
$vars['ftpPassword'] = '';
|
||||
}
|
||||
|
||||
$doc =& JFactory::getDocument();
|
||||
$doc->addCustomTag($xajax->getJavascript('', 'includes/js/xajax.js', 'includes/js/xajax.js'));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get data for later use
|
||||
*
|
||||
* @return string
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getData($key){
|
||||
|
||||
if ( ! array_key_exists($key, $this->data) )
|
||||
{
|
||||
$null = null;
|
||||
return $null;
|
||||
}
|
||||
|
||||
return $this->data[$key];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the local PHP settings
|
||||
*
|
||||
* @param $val Value to get
|
||||
* @return Mixed
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
function getPhpSetting($val) {
|
||||
$r = (ini_get($val) == '1' ? 1 : 0);
|
||||
return $r ? 'ON' : 'OFF';
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the configuration variables for the installation
|
||||
*
|
||||
* @return Array Configuration variables
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getVars()
|
||||
{
|
||||
if ( ! $this->vars )
|
||||
{
|
||||
// get a recursively slash stripped version of post
|
||||
$post = (array) JRequest::get( 'post' );
|
||||
$postVars = JArrayHelper::getValue( $post, 'vars', array(), 'array' );
|
||||
$session =& JFactory::getSession();
|
||||
$registry =& $session->get('registry');
|
||||
$registry->loadArray($postVars, 'application');
|
||||
$this->vars = $registry->toArray('application');
|
||||
}
|
||||
|
||||
return $this->vars;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the parameters for database creation
|
||||
*
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function license()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the parameters for database creation
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function makeDB($vars = false)
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
// Initialize variables
|
||||
if ($vars === false) {
|
||||
$vars = $this->getVars();
|
||||
}
|
||||
|
||||
$errors = null;
|
||||
$lang = JArrayHelper::getValue($vars, 'lang', 'en-GB');
|
||||
$DBcreated = JArrayHelper::getValue($vars, 'DBcreated', '0');
|
||||
$DBtype = JArrayHelper::getValue($vars, 'DBtype', 'mysql');
|
||||
$DBhostname = JArrayHelper::getValue($vars, 'DBhostname', '');
|
||||
$DBuserName = JArrayHelper::getValue($vars, 'DBuserName', '');
|
||||
$DBpassword = JArrayHelper::getValue($vars, 'DBpassword', '');
|
||||
$DBname = JArrayHelper::getValue($vars, 'DBname', '');
|
||||
$DBPrefix = JArrayHelper::getValue($vars, 'DBPrefix', 'jos_');
|
||||
$DBOld = JArrayHelper::getValue($vars, 'DBOld', 'bu');
|
||||
$DBversion = JArrayHelper::getValue($vars, 'DBversion', '');
|
||||
|
||||
// these 3 errors should be caught by the javascript in dbConfig
|
||||
if ($DBtype == '')
|
||||
{
|
||||
$this->setError(JText::_('validType'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
//return JInstallationView::error($vars, JText::_('validType'), 'dbconfig');
|
||||
}
|
||||
if (!$DBhostname || !$DBuserName || !$DBname)
|
||||
{
|
||||
$this->setError(JText::_('validDBDetails'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
//return JInstallationView::error($vars, JText::_('validDBDetails'), 'dbconfig');
|
||||
}
|
||||
if ($DBname == '')
|
||||
{
|
||||
$this->setError(JText::_('emptyDBName'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
//return JInstallationView::error($vars, JText::_('emptyDBName'), 'dbconfig');
|
||||
}
|
||||
if (!preg_match( '#^[a-zA-Z]+[a-zA-Z0-9_]*$#', $DBPrefix )) {
|
||||
$this->setError(JText::_('MYSQLPREFIXINVALIDCHARS'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
}
|
||||
if (strlen($DBPrefix) > 15) {
|
||||
$this->setError(JText::_('MYSQLPREFIXTOOLONG'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
}
|
||||
if (strlen($DBname) > 64) {
|
||||
$this->setError(JText::_('MYSQLDBNAMETOOLONG'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!$DBcreated)
|
||||
{
|
||||
$DBselect = false;
|
||||
$db = & JInstallationHelper::getDBO($DBtype, $DBhostname, $DBuserName, $DBpassword, null, $DBPrefix, $DBselect);
|
||||
|
||||
if ( JError::isError($db) ) {
|
||||
// connection failed
|
||||
$this->setError(JText::sprintf('WARNNOTCONNECTDB', $db->toString()));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $db->toString());
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($err = $db->getErrorNum()) {
|
||||
// connection failed
|
||||
$this->setError(JText::sprintf('WARNNOTCONNECTDB', $db->getErrorNum()));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $db->getErrorMsg());
|
||||
return false;
|
||||
}
|
||||
|
||||
//Check utf8 support of database
|
||||
$DButfSupport = $db->hasUTF();
|
||||
|
||||
// Try to select the database
|
||||
if ( ! $db->select($DBname) )
|
||||
{
|
||||
if (JInstallationHelper::createDatabase($db, $DBname, $DButfSupport))
|
||||
{
|
||||
$db->select($DBname);
|
||||
/*
|
||||
// make the new connection to the new database
|
||||
$db = NULL;
|
||||
$db = & JInstallationHelper::getDBO($DBtype, $DBhostname, $DBuserName, $DBpassword, $DBname, $DBPrefix);
|
||||
*/
|
||||
} else {
|
||||
$this->setError(JText::sprintf('WARNCREATEDB', $DBname));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $db->getErrorMsg());
|
||||
return false;
|
||||
//return JInstallationView::error($vars, array (JText::sprintf('WARNCREATEDB', $DBname)), 'dbconfig', $error);
|
||||
}
|
||||
} else {
|
||||
|
||||
// pre-existing database - need to set character set to utf8
|
||||
// will only affect MySQL 4.1.2 and up
|
||||
JInstallationHelper::setDBCharset($db, $DBname);
|
||||
}
|
||||
|
||||
$db = & JInstallationHelper::getDBO($DBtype, $DBhostname, $DBuserName, $DBpassword, $DBname, $DBPrefix);
|
||||
|
||||
if ($DBOld == 'rm') {
|
||||
if (JInstallationHelper::deleteDatabase($db, $DBname, $DBPrefix, $errors)) {
|
||||
$this->setError(JText::_('WARNDELETEDB'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', $errors);
|
||||
return false;
|
||||
//return JInstallationView::error($vars, , 'dbconfig', JInstallationHelper::errors2string($errors));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
* We assume since we aren't deleting the database that we need
|
||||
* to back it up :)
|
||||
*/
|
||||
if (JInstallationHelper::backupDatabase($db, $DBname, $DBPrefix, $errors)) {
|
||||
$this->setError(JText::_('WARNBACKINGUPDB'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', JInstallationHelper::errors2string($errors));
|
||||
return false;
|
||||
//return JInstallationView::error($vars, JText::_('WARNBACKINGUPDB'), 'dbconfig', JInstallationHelper::errors2string($errors));
|
||||
}
|
||||
}
|
||||
|
||||
$type = $DBtype;
|
||||
if ($type == 'mysqli') {
|
||||
$type = 'mysql';
|
||||
}
|
||||
|
||||
// set collation and use utf-8 compatibile script if appropriate
|
||||
if ($DButfSupport) {
|
||||
$dbscheme = 'sql'.DS.$type.DS.'joomla.sql';
|
||||
} else {
|
||||
$dbscheme = 'sql'.DS.$type.DS.'joomla_backward.sql';
|
||||
}
|
||||
|
||||
if (JInstallationHelper::populateDatabase($db, $dbscheme, $errors) > 0)
|
||||
{
|
||||
$this->setError(JText::_('WARNPOPULATINGDB'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', JInstallationHelper::errors2string($errors));
|
||||
return false;
|
||||
//return JInstallationView::error($vars, JText::_('WARNPOPULATINGDB'), 'dbconfig', JInstallationHelper::errors2string($errors));
|
||||
}
|
||||
|
||||
// Load the localise.sql for translating the data in joomla.sql/joomla_backwards.sql
|
||||
// This feature is available for localized version of Joomla! 1.5
|
||||
jimport('joomla.filesystem.file');
|
||||
$dblocalise = 'sql'.DS.$type.DS.'localise.sql';
|
||||
if(JFile::exists($dblocalise)) {
|
||||
if(JInstallationHelper::populateDatabase($db, $dblocalise, $errors) > 0) {
|
||||
$this->setError(JText::_('WARNPOPULATINGDB'));
|
||||
$this->setData('back', 'dbconfig');
|
||||
$this->setData('errors', JInstallationHelper::errors2string($errors));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Handle default backend language setting. This feature is available for
|
||||
// localized versions of Joomla! 1.5.
|
||||
$langfiles = $mainframe->getLocaliseAdmin();
|
||||
if (in_array($lang, $langfiles['admin']) || in_array($lang, $langfiles['site'])) {
|
||||
// Determine the language settings
|
||||
$param[] = Array();
|
||||
if (in_array($lang, $langfiles['admin'])) {
|
||||
$langparam[] = "administrator=$lang";
|
||||
}
|
||||
|
||||
if (in_array($lang, $langfiles['site'])) {
|
||||
$langparam[] = "site=$lang";
|
||||
}
|
||||
$langparams = implode("\n", $langparam);
|
||||
|
||||
// Because database config has not yet been set we just
|
||||
// do the trick by a plain update of the proper record.
|
||||
$where[] = "`option`='com_languages'";
|
||||
$where = (count($where) ? ' WHERE '.implode(' AND ', $where) : '');
|
||||
|
||||
$query = "UPDATE #__components " .
|
||||
"SET params='$langparams'" .
|
||||
$where;
|
||||
|
||||
$db->setQuery($query);
|
||||
if (!$db->query()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Finishes configuration parameters
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function mainConfig()
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
|
||||
// get ftp configuration into registry for use in case of safe mode
|
||||
if($vars['ftpEnable']) {
|
||||
JInstallationHelper::setFTPCfg( $vars );
|
||||
}
|
||||
|
||||
// Check a few directories are writeable as this may cause issues
|
||||
if(!is_writeable(JPATH_SITE.DS.'tmp') || !is_writeable(JPATH_SITE.DS.'installation'.DS.'sql'.DS.'migration')) {
|
||||
$vars['dircheck'] = JText::_('Some paths may be unwritable');
|
||||
}
|
||||
|
||||
// Require the xajax library
|
||||
require_once( JPATH_BASE.DS.'includes'.DS.'xajax'.DS.'xajax.inc.php' );
|
||||
|
||||
// Instantiate the xajax object and register the function
|
||||
$xajax = new xajax(JURI::base().'installer/jajax.php');
|
||||
$xajax->registerFunction(array('instDefault', 'JAJAXHandler', 'sampledata'));
|
||||
// $xajax->debugOn();
|
||||
$xajax->errorHandlerOn();
|
||||
$doc =& JFactory::getDocument();
|
||||
$doc->addCustomTag($xajax->getJavascript('', 'includes/js/xajax.js', 'includes/js/xajax.js'));
|
||||
|
||||
// Deal with possible sql script uploads from this stage
|
||||
$vars['loadchecked'] = 0;
|
||||
if (JRequest::getVar( 'sqlupload', 0, 'post', 'int' ) == 1)
|
||||
{
|
||||
$vars['sqlresponse'] = JInstallationHelper::uploadSql( $vars );
|
||||
$vars['dataloaded'] = '1';
|
||||
$vars['loadchecked'] = 1;
|
||||
}
|
||||
if ((JRequest::getVar( 'migrationupload', 0, 'post', 'int' ) == 1) && (JRequest::getVar( 'migrationUploaded', 0, 'post', 'int' ) == 0))
|
||||
{
|
||||
jexit(print_r(JRequest::getVar( 'migrationUploaded', 0, 'post', 'int' )));
|
||||
$vars['migresponse'] = JInstallationHelper::uploadSql( $vars, true );
|
||||
$vars['dataloaded'] = '1';
|
||||
$vars['loadchecked'] = 2;
|
||||
}
|
||||
if(JRequest::getVar( 'migrationUploaded',0,'post','int') == 1) {
|
||||
$vars['migresponse'] = JInstallationHelper::findMigration( $vars );
|
||||
$vars['dataloaded'] = '1';
|
||||
$vars['loadchecked'] = 2;
|
||||
}
|
||||
|
||||
// $strip = get_magic_quotes_gpc();
|
||||
|
||||
if (isset ($vars['siteName']))
|
||||
{
|
||||
$vars['siteName'] = stripslashes(stripslashes($vars['siteName']));
|
||||
}
|
||||
|
||||
$folders = array (
|
||||
'administrator/backups',
|
||||
'administrator/cache',
|
||||
'administrator/components',
|
||||
'administrator/language',
|
||||
'administrator/modules',
|
||||
'administrator/templates',
|
||||
'cache',
|
||||
'components',
|
||||
'images',
|
||||
'images/banners',
|
||||
'images/stories',
|
||||
'language',
|
||||
'plugins',
|
||||
'plugins/content',
|
||||
'plugins/editors',
|
||||
'plugins/search',
|
||||
'plugins/system',
|
||||
'tmp',
|
||||
'modules',
|
||||
'templates',
|
||||
);
|
||||
|
||||
// Now lets make sure we have permissions set on the appropriate folders
|
||||
// foreach ($folders as $folder)
|
||||
// {
|
||||
// if (!JInstallationHelper::setDirPerms( $folder, $vars ))
|
||||
// {
|
||||
// $lists['folderPerms'][] = $folder;
|
||||
// }
|
||||
// }
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform a preinstall check
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function preInstall()
|
||||
{
|
||||
$vars =& $this->getVars();
|
||||
$lists = array ();
|
||||
|
||||
$phpOptions[] = array (
|
||||
'label' => JText::_('PHP version').' >= 4.3.10',
|
||||
'state' => phpversion() < '4.3.10' ? 'No' : 'Yes'
|
||||
);
|
||||
$phpOptions[] = array (
|
||||
'label' => '- '.JText::_('zlib compression support'),
|
||||
'state' => extension_loaded('zlib') ? 'Yes' : 'No'
|
||||
);
|
||||
$phpOptions[] = array (
|
||||
'label' => '- '.JText::_('XML support'),
|
||||
'state' => extension_loaded('xml') ? 'Yes' : 'No',
|
||||
'statetext' => extension_loaded('xml') ? 'Yes' : 'No'
|
||||
);
|
||||
$phpOptions[] = array (
|
||||
'label' => '- '.JText::_('MySQL support'),
|
||||
'state' => (function_exists('mysql_connect') || function_exists('mysqli_connect')) ? 'Yes' : 'No'
|
||||
);
|
||||
if (extension_loaded( 'mbstring' )) {
|
||||
$mbDefLang = strtolower( ini_get( 'mbstring.language' ) ) == 'neutral';
|
||||
$phpOptions[] = array (
|
||||
'label' => JText::_( 'MB language is default' ),
|
||||
'state' => $mbDefLang ? 'Yes' : 'No',
|
||||
'notice' => $mbDefLang ? '' : JText::_( 'NOTICEMBLANGNOTDEFAULT' )
|
||||
);
|
||||
$mbOvl = ini_get('mbstring.func_overload') != 0;
|
||||
$phpOptions[] = array (
|
||||
'label' => JText::_('MB string overload off'),
|
||||
'state' => !$mbOvl ? 'Yes' : 'No',
|
||||
'notice' => $mbOvl ? JText::_('NOTICEMBSTRINGOVERLOAD') : ''
|
||||
);
|
||||
}
|
||||
$sp = '';
|
||||
/*$phpOptions[] = array (
|
||||
'label' => JText::_('Session path set'),
|
||||
'state' => ($sp = ini_get('session.save_path')) ? 'Yes' : 'No'
|
||||
);
|
||||
$phpOptions[] = array (
|
||||
'label' => JText::_('Session path writable'),
|
||||
'state' => is_writable($sp) ? 'Yes' : 'No'
|
||||
);*/
|
||||
$cW = (@ file_exists('../configuration.php') && @ is_writable('../configuration.php')) || is_writable('../');
|
||||
$phpOptions[] = array (
|
||||
'label' => 'configuration.php '.JText::_('writable'),
|
||||
'state' => $cW ? 'Yes' : 'No',
|
||||
'notice' => $cW ? '' : JText::_('NOTICEYOUCANSTILLINSTALL')
|
||||
);
|
||||
$lists['phpOptions'] = & $phpOptions;
|
||||
|
||||
$phpRecommended = array (
|
||||
array (
|
||||
JText::_('Safe Mode'),
|
||||
'safe_mode',
|
||||
'OFF'
|
||||
),
|
||||
array (
|
||||
JText::_('Display Errors'),
|
||||
'display_errors',
|
||||
'OFF'
|
||||
),
|
||||
array (
|
||||
JText::_('File Uploads'),
|
||||
'file_uploads',
|
||||
'ON'
|
||||
),
|
||||
array (
|
||||
JText::_('Magic Quotes Runtime'),
|
||||
'magic_quotes_runtime',
|
||||
'OFF'
|
||||
),
|
||||
array (
|
||||
JText::_('Register Globals'),
|
||||
'register_globals',
|
||||
'OFF'
|
||||
),
|
||||
array (
|
||||
JText::_('Output Buffering'),
|
||||
'output_buffering',
|
||||
'OFF'
|
||||
),
|
||||
array (
|
||||
JText::_('Session auto start'),
|
||||
'session.auto_start',
|
||||
'OFF'
|
||||
),
|
||||
);
|
||||
|
||||
foreach ($phpRecommended as $setting)
|
||||
{
|
||||
$lists['phpSettings'][] = array (
|
||||
'label' => $setting[0],
|
||||
'setting' => $setting[2],
|
||||
'actual' => $this->getPhpSetting( $setting[1] ),
|
||||
'state' => $this->getPhpSetting($setting[1]) == $setting[2] ? 'Yes' : 'No'
|
||||
);
|
||||
}
|
||||
|
||||
$this->setData('lists', $lists);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove directory messages
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function removedir()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Save the configuration information
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function saveConfig()
|
||||
{
|
||||
global $mainframe;
|
||||
|
||||
$vars =& $this->getVars();
|
||||
$lang =& JFactory::getLanguage();
|
||||
|
||||
// Import authentication library
|
||||
jimport( 'joomla.user.helper' );
|
||||
|
||||
// Set some needed variables
|
||||
$vars['siteUrl'] = JURI::root();
|
||||
$vars['secret'] = JUserHelper::genRandomPassword(16);
|
||||
|
||||
$vars['offline'] = JText::_( 'STDOFFLINEMSG' );
|
||||
$vars['errormsg'] = JText::_( 'STDERRORMSG' );
|
||||
$vars['metadesc'] = JText::_( 'STDMETADESC' );
|
||||
$vars['metakeys'] = JText::_( 'STDMETAKEYS' );
|
||||
$vars['tmp_path'] = JPATH_ROOT.DS.'tmp';
|
||||
$vars['log_path'] = JPATH_ROOT.DS.'logs';
|
||||
|
||||
// set default language
|
||||
$forced = $mainframe->getLocalise();
|
||||
if ( empty($forced['lang']) ) {
|
||||
$vars['deflang'] = 'en-GB';
|
||||
$vars['bclang'] = 'english';
|
||||
} else {
|
||||
$vars['deflang'] = $forced['lang'];
|
||||
$vars['bclang'] = $lang->getBackwardLang();
|
||||
}
|
||||
|
||||
if ( empty( $forced['helpurl'] ) ) {
|
||||
$vars['helpurl'] = 'http://help.joomla.org';
|
||||
} else {
|
||||
$vars['helpurl'] = $forced['helpurl'];
|
||||
}
|
||||
|
||||
// If FTP has not been enabled, set the value to 0
|
||||
if (!isset($vars['ftpEnable']))
|
||||
{
|
||||
$vars['ftpEnable'] = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Trim the last slash from the FTP root, as the FTP root usually replaces JPATH_ROOT.
|
||||
* If the path had a trailing slash, this would lead to double slashes, like "/joomla//configuration.php"
|
||||
*/
|
||||
if (isset($vars['ftpRoot'])) {
|
||||
$vars['ftpRoot'] = rtrim($vars['ftpRoot'], '/');
|
||||
}
|
||||
|
||||
switch ($vars['DBtype']) {
|
||||
|
||||
case 'mssql' :
|
||||
$vars['ZERO_DATE'] = '1/01/1990';
|
||||
break;
|
||||
|
||||
default :
|
||||
$vars['ZERO_DATE'] = '0000-00-00 00:00:00';
|
||||
break;
|
||||
}
|
||||
|
||||
JInstallationHelper::createAdminUser($vars);
|
||||
|
||||
/**
|
||||
* Write the configuration file
|
||||
*/
|
||||
jimport('joomla.template.template');
|
||||
|
||||
$tmpl = new JTemplate();
|
||||
$tmpl->applyInputFilter('ShortModifiers');
|
||||
|
||||
// load the wrapper and common templates
|
||||
$tmpl->setRoot( JPATH_BASE . DS . 'template' . DS. 'tmpl' );
|
||||
|
||||
$tmpl->readTemplatesFromFile('configuration.html');
|
||||
$tmpl->addVars('configuration', $vars, 'var_');
|
||||
|
||||
if (empty($vars['ftpSavePass'])) {
|
||||
$tmpl->addVar('configuration', 'var_ftpuser', '');
|
||||
$tmpl->addVar('configuration', 'var_ftppassword', '');
|
||||
}
|
||||
|
||||
$buffer = $tmpl->getParsedTemplate('configuration');
|
||||
$path = JPATH_CONFIGURATION.DS.'configuration.php';
|
||||
|
||||
if (file_exists($path)) {
|
||||
$canWrite = is_writable($path);
|
||||
} else {
|
||||
$canWrite = is_writable(JPATH_CONFIGURATION.DS);
|
||||
}
|
||||
|
||||
/*
|
||||
* If the file exists but isn't writable OR if the file doesn't exist and the parent directory
|
||||
* is not writable we need to use FTP
|
||||
*/
|
||||
$ftpFlag = false;
|
||||
if ((file_exists($path) && !is_writable($path)) || (!file_exists($path) && !is_writable(dirname($path).'/'))) {
|
||||
$ftpFlag = true;
|
||||
}
|
||||
|
||||
// Check for safe mode
|
||||
if (ini_get('safe_mode'))
|
||||
{
|
||||
$ftpFlag = true;
|
||||
}
|
||||
|
||||
// Enable/Disable override
|
||||
if (!isset($vars['ftpEnable']) || ($vars['ftpEnable'] != 1))
|
||||
{
|
||||
$ftpFlag = false;
|
||||
}
|
||||
|
||||
if ($ftpFlag == true)
|
||||
{
|
||||
// Connect the FTP client
|
||||
jimport('joomla.client.ftp');
|
||||
jimport('joomla.filesystem.path');
|
||||
|
||||
$ftp = & JFTP::getInstance($vars['ftpHost'], $vars['ftpPort']);
|
||||
$ftp->login($vars['ftpUser'], $vars['ftpPassword']);
|
||||
|
||||
// Translate path for the FTP account
|
||||
$file = JPath::clean(str_replace(JPATH_CONFIGURATION, $vars['ftpRoot'], $path), '/');
|
||||
|
||||
// Use FTP write buffer to file
|
||||
if (!$ftp->write($file, $buffer)) {
|
||||
$this->setData('buffer', $buffer);
|
||||
return false;
|
||||
}
|
||||
|
||||
$ftp->quit();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($canWrite) {
|
||||
file_put_contents($path, $buffer);
|
||||
} else {
|
||||
$this->setData('buffer', $buffer);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set data for later use
|
||||
*
|
||||
* @param string $key Data key
|
||||
* @param Mixed data
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function setData($key, $value){
|
||||
$this->data[$key] = $value;
|
||||
}
|
||||
|
||||
function dumpLoad() {
|
||||
include (JPATH_BASE . '/includes/bigdump.php');
|
||||
}
|
||||
|
||||
function checkUpload() {
|
||||
// pie
|
||||
$vars =& $this->getVars();
|
||||
//print_r($vars);
|
||||
$sqlFile = JRequest::getVar('sqlFile', '', 'files', 'array');
|
||||
if(JRequest::getVar( 'sqlUploaded', 0, 'post', 'bool' ) == false) {
|
||||
/*
|
||||
* Move uploaded file
|
||||
*/
|
||||
// Set permissions for tmp dir
|
||||
JInstallationHelper::_chmod(JPATH_SITE.DS.'tmp', 0777);
|
||||
jimport('joomla.filesystem.file');
|
||||
$uploaded = JFile::upload($sqlFile['tmp_name'], JPATH_SITE.DS.'tmp'.DS.$sqlFile['name']);
|
||||
if(!$uploaded) {
|
||||
$this->setError(JText::_('WARNUPLOADFAILURE'));
|
||||
return false;
|
||||
}
|
||||
|
||||
if( !preg_match('#\.sql$#i', $sqlFile['name']) )
|
||||
{
|
||||
$archive = JPATH_SITE.DS.'tmp'.DS.$sqlFile['name'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$script = JPATH_SITE.DS.'tmp'.DS.$sqlFile['name'];
|
||||
}
|
||||
|
||||
// unpack archived sql files
|
||||
if (isset($archive) && $archive )
|
||||
{
|
||||
$package = JInstallationHelper::unpack( $archive, $vars );
|
||||
if ( $package === false )
|
||||
{
|
||||
$this->setError(JText::_('WARNUNPACK'));
|
||||
return false;
|
||||
}
|
||||
$script = $package['folder'].DS.$package['script'];
|
||||
}
|
||||
} else {
|
||||
$script = JPATH_BASE . DS . 'sql' . DS . 'migration' . DS . 'migrate.sql';
|
||||
}
|
||||
$migration = JRequest::getVar( 'migration', 0, 'post', 'bool' );
|
||||
/*
|
||||
* If migration perform manipulations on script file before population
|
||||
*/
|
||||
if ($migration == true) {
|
||||
$db = & JInstallationHelper::getDBO($vars['DBtype'], $vars['DBhostname'], $vars['DBuserName'], $vars['DBpassword'], $vars['DBname'], $vars['DBPrefix']);
|
||||
$script = JInstallationHelper::preMigrate($script, $vars, $db);
|
||||
if ( $script == false )
|
||||
{
|
||||
$this->setError(JText::_( 'Script operations failed' ));
|
||||
return false;
|
||||
}
|
||||
} // Disable in testing */
|
||||
// Ensure the script is always in the same location
|
||||
if($script != JPATH_BASE . DS . 'sql' . DS . 'migration' . DS . 'migrate.sql') {
|
||||
JFile::move($script, JPATH_BASE . DS . 'sql' . DS . 'migration' . DS . 'migrate.sql');
|
||||
}
|
||||
//$this->setData('scriptpath',$script);
|
||||
$vars['dataloaded'] = '1';
|
||||
$vars['loadchecked'] = '1';
|
||||
$vars['migration'] = $migration;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
function postMigrate() {
|
||||
$migErrors = null;
|
||||
$args =& $this->getVars();
|
||||
$db = & JInstallationHelper::getDBO($args['DBtype'], $args['DBhostname'], $args['DBuserName'], $args['DBpassword'], $args['DBname'], $args['DBPrefix']);
|
||||
$migResult = JInstallationHelper::postMigrate( $db, $migErrors, $args );
|
||||
if(!$migResult) echo JText::_("Migration Successful");
|
||||
else {
|
||||
echo '<div id="installer">';
|
||||
echo '<p>'.JText::_('Migration failed').':</p>';
|
||||
foreach($migErrors as $error) echo '<p>'.$error['msg'].'</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
return $migResult;
|
||||
}
|
||||
}
|
||||
1
www/-installation-/installer/views/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
1
www/-installation-/installer/views/install/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
381
www/-installation-/installer/views/install/view.php
Normal file
@ -0,0 +1,381 @@
|
||||
<?php
|
||||
/**
|
||||
* @version $Id: view.php 10381 2008-06-01 03:35:53Z pasamio $
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
|
||||
/**
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
*/
|
||||
|
||||
jimport('joomla.application.component.view');
|
||||
|
||||
class JInstallationView extends JView
|
||||
{
|
||||
/**
|
||||
* The installation steps
|
||||
*
|
||||
* @var array
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
var $_steps = null;
|
||||
|
||||
/**
|
||||
* The templabe object
|
||||
*
|
||||
* @var object
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
var $_template = null;
|
||||
|
||||
/**
|
||||
* Language page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function chooseLanguage()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
|
||||
$model =& $this->getModel();
|
||||
$lists =& $model->getData('lists');
|
||||
|
||||
$tmpl =& $this->getTemplate( 'language.html' );
|
||||
|
||||
$steps['lang'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
$tmpl->addRows( 'lang-options', $lists['langs'] );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a template object
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access private
|
||||
* @since 1.5
|
||||
*/
|
||||
function _createTemplate( $bodyHtml = null, $mainHtml = 'page.html' )
|
||||
{
|
||||
|
||||
jimport('joomla.template.template');
|
||||
|
||||
$this->_template = new JTemplate();
|
||||
$this->_template->applyInputFilter('ShortModifiers');
|
||||
|
||||
// load the wrapper and common templates
|
||||
$this->_template->setRoot( JPATH_BASE . DS . 'template' . DS. 'tmpl' );
|
||||
$this->_template->readTemplatesFromFile( $mainHtml );
|
||||
|
||||
if ($bodyHtml) {
|
||||
$this->_template->setAttribute( 'body', 'src', $bodyHtml );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* The DB Config page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function dbConfig()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$lists =& $model->getData('lists');
|
||||
$tmpl =& $this->getTemplate( 'dbconfig.html' );
|
||||
|
||||
$steps['dbconfig'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
$tmpl->addRows( 'dbtype-options', $lists['dbTypes'] );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the template
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function display()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
$tmpl =& $this->getTemplate();
|
||||
$lang =& JFactory::getLanguage();
|
||||
$vars =& $model->getVars();
|
||||
|
||||
$tmpl->addVar( 'buttons', 'direction', $lang->isRTL() ? 'rtl' : 'ltr');
|
||||
$tmpl->addVar( 'body', 'lang', $lang->getTag() );
|
||||
$tmpl->addVars( 'body', $vars, 'var_' );
|
||||
|
||||
echo $tmpl->fetch( 'page' );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Report an error to the user
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function error()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$vars =& $model->getVars();
|
||||
$tmpl =& $this->getTemplate( 'error.html' );
|
||||
|
||||
$msg = $model->getError();
|
||||
$back = $model->getData('back');
|
||||
$xmsg = $model->getData('errors');
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
$tmpl->addVar( 'messages', 'message', $msg );
|
||||
|
||||
if ($xmsg) {
|
||||
$tmpl->addVar( 'xmessages', 'xmessage', $xmsg );
|
||||
}
|
||||
|
||||
$tmpl->addVar( 'buttons', 'back', $back );
|
||||
$tmpl->addVars( 'body', $vars, 'var_' );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* The the final page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function finish()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$vars =& $model->getVars();
|
||||
$tmpl =& $this->getTemplate( 'finish.html' );
|
||||
|
||||
$buffer = $model->getData('buffer');
|
||||
|
||||
$steps['finish'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
|
||||
if ($buffer) {
|
||||
$tmpl->addVar( 'configuration-error', 'buffer', $buffer );
|
||||
}
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the FTP config page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function ftpConfig()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
|
||||
$tmpl =& $this->getTemplate( 'ftpconfig.html' );
|
||||
|
||||
$steps['ftpconfig'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the installation steps
|
||||
*
|
||||
* @return array
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getSteps()
|
||||
{
|
||||
if ( is_null($this->_steps) )
|
||||
{
|
||||
$this->_steps = array(
|
||||
'lang' => 'off',
|
||||
'preinstall' => 'off',
|
||||
'license' => 'off',
|
||||
'dbconfig' => 'off',
|
||||
'ftpconfig' => 'off',
|
||||
'mainconfig' => 'off',
|
||||
'finish' => 'off'
|
||||
);
|
||||
}
|
||||
|
||||
return $this->_steps;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the template object
|
||||
*
|
||||
* @param string The name of the body html file
|
||||
* @return patTemplate
|
||||
* @access protected
|
||||
* @since 1.5
|
||||
*/
|
||||
function & getTemplate( $bodyHtml = null )
|
||||
{
|
||||
static $current;
|
||||
|
||||
$change = false;
|
||||
|
||||
// Record the current template body
|
||||
if ( is_null($current) && $bodyHtml)
|
||||
{
|
||||
$current = $bodyHtml;
|
||||
$change = true;
|
||||
}
|
||||
|
||||
// Check if we need to create the body, possibly anew
|
||||
if ( is_null( $this->_template) || $change )
|
||||
{
|
||||
$this->_createTemplate($bodyHtml);
|
||||
}
|
||||
|
||||
return $this->_template;
|
||||
}
|
||||
|
||||
/**
|
||||
* The license page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function license()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$tmpl =& $this->getTemplate( 'license.html' );
|
||||
|
||||
$steps['license'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* The main configuration page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function mainConfig()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$tmpl =& $this->getTemplate( 'mainconfig.html' );
|
||||
|
||||
$steps['mainconfig'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
|
||||
$tmpl->addVar( 'buttons', 'previous', 'ftpconfig');
|
||||
// $tmpl->addRows( 'folder-perms', $lists['folderPerms'] );
|
||||
|
||||
/*
|
||||
* prepare migration encoding selection
|
||||
*/
|
||||
$encodings = array( 'iso-8859-1','iso-8859-2','iso-8859-3','iso-8859-4','iso-8859-5','iso-8859-6','iso-8859-7','iso-8859-8','iso-8859-9','iso-8859-10','iso-8859-13','iso-8859-14','iso-8859-15','cp874','windows-1250','windows-1251','windows-1252','windows-1253','windows-1254','windows-1255','windows-1256','windows-1257','windows-1258','utf-8','big5','euc-jp','euc-kr','euc-tw','iso-2022-cn','iso-2022-jp-2','iso-2022-jp','iso-2022-kr','iso-10646-ucs-2','iso-10646-ucs-4','koi8-r','koi8-ru','ucs2-internal','ucs4-internal','unicode-1-1-utf-7','us-ascii','utf-16' );
|
||||
$tmpl->addVar( 'encoding_options', 'value', $encodings );
|
||||
$max_upload_size = min(JInstallationHelper::let_to_num(ini_get('post_max_size')), JInstallationHelper::let_to_num(ini_get('upload_max_filesize')));
|
||||
$tmpl->addVar( 'uploadsize', 'maxupload', JText::sprintf('UPLOADFILESIZE',(number_format($max_upload_size/(1024*1024), 2))."MB."));
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* The the pre-install info page
|
||||
*
|
||||
* @return boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function preInstall()
|
||||
{
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
$lists =& $model->getData('lists');
|
||||
|
||||
$version = new JVersion();
|
||||
$tmpl =& $this->getTemplate( 'preinstall.html' );
|
||||
|
||||
$steps['preinstall'] = 'on';
|
||||
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
$tmpl->addVar( 'body', 'version', $version->getLongVersion() );
|
||||
|
||||
$tmpl->addRows( 'php-options', $lists['phpOptions'] );
|
||||
$tmpl->addRows( 'php-settings', $lists['phpSettings'] );
|
||||
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove directory messages
|
||||
*
|
||||
* @return Boolean True if successful
|
||||
* @access public
|
||||
* @since 1.5
|
||||
*/
|
||||
function removedir()
|
||||
{
|
||||
$model =& $this->getModel();
|
||||
|
||||
$this->_createTemplate('', 'removedir.html');
|
||||
$tmpl = $this->_template;
|
||||
|
||||
#$tmpl =& $this->getTemplate( 'removedir.html' );
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
|
||||
function migrateScreen() {
|
||||
$steps =& $this->getSteps();
|
||||
$model =& $this->getModel();
|
||||
|
||||
$tmpl =& $this->getTemplate( 'migration.html' );
|
||||
$scriptpath =& $model->getData('scriptpath');
|
||||
$tmpl->addVars( 'stepbar', $steps, 'step_' );
|
||||
$tmpl->addVar( 'migration', 'migration', JRequest::getVar( 'migration', 0, 'post', 'bool' ));
|
||||
$tmpl->addVar( 'buttons', 'previous', 'mainconfig');
|
||||
return $this->display();
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
243
www/-installation-/language/ca-ES/ca-ES.ini
Normal file
@ -0,0 +1,243 @@
|
||||
# $Id: ca-ES.ini 1.5.9 2009 dverger ~0 $
|
||||
# author joomla.cat
|
||||
# copyright (C) 2005 - 2009 Open Source Matters. All rights reserved.
|
||||
# license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
|
||||
|
||||
# Note : All ini files need to be saved as UTF-8
|
||||
|
||||
ACTUAL=Real
|
||||
ADMIN=Administració
|
||||
ADMIN LOGIN IN MIGRATED CONTENT WAS KEPT=Administrador<br />S'han mantingut les dades de connexió del contingut migrat
|
||||
ADMIN PASSWORD=Contrasenya de l'administrador
|
||||
ADMIN PASSWORD IN MIGRATED CONTENT WAS KEPT=S'ha mantingut la contrasenya de l'administrador del contingut migrat
|
||||
ADMINISTRATION LOGIN DETAILS=Detalls de les dades de connexió a l'administració
|
||||
ADVANCED=Avançat
|
||||
ADVANCED SETTINGS=Configuració avançada
|
||||
ALL RIGHTS RESERVED=Tots els drets són reservats
|
||||
AN ERROR HAS OCCURRED=S'ha produït un error!
|
||||
AUTOFIND FTP PATH=Troba automàticament el camí de l'FTP
|
||||
BACKUP OLD TABLES=Fes còpia de seguretat de les taules antigues
|
||||
BASIC=Bàsic
|
||||
BASIC SETTINGS=Configuració bàsica
|
||||
CANT OPEN FILE FOR IMPORT=No es pot obrir el fitxer (%s) per a importar
|
||||
CANTREADPOINTER=Inesperat: No es pot llegir l'òfset del punter de fitxer
|
||||
CHECKDUMPFILE=Verifiqueu que el nom del fitxer d'abocament només conté caràcters alfanumèrics i canvieu-li el nom si escau.
|
||||
CHECK AGAIN=Comprova de nou
|
||||
CHOOSE LANGUAGE=Trieu l'idioma
|
||||
CLICKTOINSTALLDEFAULT=Instal·la les dades de mostra
|
||||
COLLATION=Ordre alfabètic
|
||||
CONFIGURATION=Configuració
|
||||
CONFPROBLEM=No es pot escriure al fitxer o directori de configuració, o bé hi ha hagut un problema en crear el fitxer de configuració. Haureu de penjar el codi següent a mà. Feu clic a l'àrea de text per a realçar tot el codi i llavors copieu-lo i enganxeu-lo en un nou fitxer, anomeneu-lo configuration.php i pengeu-lo a la carpeta arrel del lloc.
|
||||
CONFTITLE=Confirmeu el correu electrònic i la contrasenya de l'administrador
|
||||
CONGRATSEOF=Felicitats! S'ha arribat al final del fitxer, s'assumeix correcte
|
||||
CONGRATULATIONS=Felicitats! S'ha instal·lat el Joomla!
|
||||
CONNECTION FAIL=Ha fallat la connexió al servidor de bases de dades. Comproveu els noms d'amfitrió i d'usuari i la contrasenya.
|
||||
CONNECTION SETTINGS=Configuració de la connexió
|
||||
CONFIRM ADMIN PASSWORD=Confirma la contrasenya d'administrador
|
||||
DATABASE=Base de dades
|
||||
DATABASE COLLATION=Ordre alfabètic de la base de dades
|
||||
DATABASE CONFIGURATION=Configuració de la base de dades
|
||||
DATABASE ERRORS REPORTED=S'han donat errors de base de dades
|
||||
DATABASE NAME=Nom de la base de dades
|
||||
DATABASE TYPE=Tipus de la base de dades
|
||||
DELAYMSG=Ara s'està esperant %s mil·lisegons abans d'iniciar la propera sessió...
|
||||
DIRECTIVE=Directriu
|
||||
DIRECTORY PERMISSIONS=Permisos de directori
|
||||
DISPLAY ERRORS=Mostra els errors
|
||||
DROP EXISTING TABLES=Elimina les taules existents
|
||||
ENABLEFTPDESC=Habilita la capa de sistema de fitxers FTP
|
||||
ENTERSITENAME=Introduïu el nom del vostre lloc Joomla!
|
||||
ERROR=Error
|
||||
ERROR INSTALLING SQL SCRIPT=S'ha produït un error en instal·lar l'script SQL
|
||||
EXECUTE=Executa
|
||||
FILESIZEUNKNOWN=No es pot determinar la mida de fitxer de
|
||||
FILE PERMISSIONS=Permisos de fitxer
|
||||
FILE UPLOADS=Càrregues de fitxer
|
||||
FINALIZEINSTALL=Premeu Següent per a finalitzar la instal·lació
|
||||
FINISH=Finalització
|
||||
FINISHBUTTONS=<p>Feu clic al botó Lloc per a visualitzar el vostre lloc Joomla! o bé el botó Administració per a portar-vos a l'inici de sessió d'administrador.</p>
|
||||
FTP CONFIGURATION=Configuració de l'FTP
|
||||
FTP HOST=Amfitrió de l'FTP
|
||||
FTP PASSWORD=Contrasenya de l'FTP
|
||||
FTP PORT=Port de l'FTP
|
||||
FTP USER=Usuari de l'FTP
|
||||
FTP ROOT PATH=Camí arrel de l'FTP
|
||||
GNU/GPL LICENSE=Llicència Pública General del GNU
|
||||
GROUP=Grup
|
||||
HOST NAME=Nom de l'amfitrió
|
||||
IGNORE=Ignora
|
||||
INSTALL DEFAULT SAMPLE DATA=Instal·la les dades de mostra per defecte
|
||||
INSTALLATION=Instal·lació
|
||||
INSTALLATIONREMOVED=Feu clic aquí quan s'hagi eliminat el directori.
|
||||
INVALIDFTP=La configuració de l'FTP no és vàlida o bé el servidor d'FTP no és compatible amb el Joomla!:
|
||||
INVALIDROOT=El directori d'FTP indicat no és el directori d'aquesta instal·lació del Joomla!
|
||||
ISFREESOFTWARE=és un programari lliure distribuït sota la llicència GNU/GPL v2.0.
|
||||
JOOMLA!=Joomla!
|
||||
LANGUAGE=Idioma
|
||||
LANGUAGEINFO=Al lloc d'ajuda del Joomla! trobareu una guia fàcil, pas a pas, sobre com instal·lar un paquet del vostre idioma propi al Joomla!<br/>Hi trobareu una llista amb enllaços als paquets d'idioma disponibles.<br/>Feu clic al botó de la dreta per a obrir el lloc d'ajuda en una nova finestra.
|
||||
LANGUAGEBUTTONLINEONE=Joomla! amb el vostre idioma propi?
|
||||
LANGUAGEBUTTONLINETWO=Visiteu el lloc d'ajuda del Joomla! per a més informació i descàrregues.
|
||||
LICENSE=Llicència
|
||||
LOADSAMPLEORMIGRATE=Carrega dades de mostra, restaura o migra contingut desat
|
||||
LOADSQLFILE=Càrrega de fitxer SQL...espereu si us plau.
|
||||
LOADSQLINSTRUCTIONS1=<strong>Important!</strong>: Es recomana que els usuaris novells del Joomla! instal·lin les dades de mostra per defecte. Això requereix que se sel·leccioni l'opció <i>i</i> es faci clic al botó abans d'anar al pas següent.
|
||||
LOADSQLINSTRUCTIONS2=Abans d'acabar la instal·lació podeu omplir la base de dades del lloc amb informació. Hi ha tres opcions per a fer-ho:
|
||||
LOADSQLINSTRUCTIONS3=<strong>1.</strong> Es poden inserir les <strong>dades de mostra per defecte</strong> - Per a fer això seleccioneu la primera opció i feu clic al botó Instal·la les dades de mostra.
|
||||
LOADSQLINSTRUCTIONS4=<strong>2.</strong> Es pot penjar <strong>un fitxer d'script SQL compatible amb Joomla! 1.5</strong> des de la màquina local i executar-lo al lloc, ja sigui per a instal·lar dades de mostra en idioma propi, ja sigui per a restaurar una còpia de seguretat d'un Joomla! 1.5. L'script ha de tenir els prefixes de taula correctes, ser codificat en utf-8 i ser compatible amb l'esquema de base de dades del Joomla! 1.5.
|
||||
LOADSQLINSTRUCTIONS5=<strong>2.b Migració del contingut des de versions anteriors del Joomla!</strong>. La selecció de l'opció "Carrega un script de migració" habilita el suport per a la migració d'abocaments de base de dades de versions del Joomla! 1.0.x antigues al nou lloc Joomla! 1.5. Les conversions necessàries es fan al vol. El fitxer d'script es pot crear automàticament al lloc antic utilitzant el component <code>com_migrator</code>.<br/> Per a més informació sobre el component i el procediment a seguir vegeu la <a href="http://docs.joomla.org/Migrating_from_1.0.x_to_1.5_Stable" target="_blank">Guia de migració del Joomla! 1.5</a>.
|
||||
LOADSQLINSTRUCTIONS6=La funció de càrrega admet fitxers d'script SQL no comprimits, fitxers d'script comprimits en Zip i fitxers d'script comprimits en gz. Els fitxers comprimits només poden contenir un sol script SQL. Podeu triar l'opció "Ja he penjat l'script de migració" si trobeu que el fitxer és massa gran (es poden produir errors pel límit de memòria i de temps) i penjar el fitxer a /installation/sql/migration/ anomenant-lo <code>migrate.sql</code> (no es permet cap compressió).<br /> Finalment...
|
||||
LOADSQLINSTRUCTIONS7=<strong>3. Instal·lació neta</strong> Si no desitgeu introduir dades de mostra ni migrar dades d'un lloc anterior ni penjar dades des d'una còpia de seguretat, sinó senzillament crear una instal·lació completament neta, una vegada hagueu introduït el Nom del lloc, el correu electrònic de l'administrador i la contrasenya, només cal que continueu a la passa <strong>Finalització</strong> fent clic a <em>Següent</em>.
|
||||
MAGIC QUOTES RUNTIME=Cometes màgiques en temps d'execució (Magic Quotes Runtime)
|
||||
MAIN CONFIGURATION=Configuració principal
|
||||
MAXIMUM UPLOAD SIZE=Mida de càrrega màxima
|
||||
MB LANGUAGE IS DEFAULT=Idioma MB per defecte
|
||||
MB STRING OVERLOAD OFF=Sobrecàrrega per a funcions de cadenes MB desactivada
|
||||
MIGRATION COMPLETED=S'ha completat la migració
|
||||
MIGRATION FAILED=La migració ha fallat
|
||||
MIGRATION LOAD SCRIPT=Script de càrrega de migració
|
||||
MIGRATION OUTPUT=Sortida de la migració
|
||||
MIGRATION SCRIPT=Script de migració
|
||||
MIGRATION SUCCESSFUL=Migració correcta, premeu següent per a continuar
|
||||
MIGRATETITLE=Carrega un script de migració
|
||||
MYSQL SUPPORT=Suport per al MySQL
|
||||
MYSQLPREFIXINVALIDCHARS=El prefix de taula MySQL ha de començar per una lletra i anar seguida només de lletres, nombres o subratllats
|
||||
MYSQLDBNAMEINVALIDCHARS=El nom de la base de dades MySQL ha de començar per una lletra i anar seguida només de lletres, nombres o subratllats
|
||||
MYSQLPREFIXTOOLONG=El prefix de taula MySQL ha de ser com a màxim de 15 caràcters
|
||||
MYSQLDBNAMETOOLONG=El nom de la base de dades MySQL ha de ser com a màxim de 64 caràcters
|
||||
NEEDTOUPLOADFILE=O bé, heu de penjar el fitxer al servidor
|
||||
NEXT=Següent
|
||||
NO=No
|
||||
NOCONNECT=No s'ha pogut connectar al servidor d'FTP
|
||||
NOCHMODDIRS=No apliquis CHMOD als directoris (utilitza els valors per defecte del servidor)
|
||||
NOCHMODFILES=No apliquis CHMOD als fitxers (utilitza els valors per defecte del servidor)
|
||||
NODELE=Ha fallat la funció "DELE"
|
||||
NODIRECTORYLISTING=No s'ha pogut obtenir un llistat de directori del servidor d'FTP
|
||||
NOJAVASCRIPTWARNING=Sembla que el JavaScript estigui inhabilitat al vostre navegador. Habiliteu el JavaScript abans de continuar.
|
||||
NOLOGIN=No s'ha pogut iniciar sessió al servidor d'FTP
|
||||
NOLIST=Ha fallat la funció "LIST"
|
||||
NOMKD=Ha fallat la funció "MKD"
|
||||
NONLST=Ha fallat la funció "NLST"
|
||||
NONNUMERICOFFSET=INESPERAT: Valors no numèrics per a inici i òfset
|
||||
NOPWD=Ha fallat la funció "PWD"
|
||||
NORETR=Ha fallat la funció "RETR"
|
||||
NORMD=Ha fallat la funció "RMD"
|
||||
NOROOT=No s'ha pogut accedir al directori FTP indicat
|
||||
NOSTOR=Ha fallat la funció "STOR"
|
||||
NOSYST=Ha fallat la funció "SYST"
|
||||
NO FILE SELECTED=No s'ha seleccionat cap fitxer
|
||||
NOTICEYOUCANSTILLINSTALL=Encara podeu continuar la instal·lació ja que els paràmetres de configuració es mostraran al final. Haureu de fer només una passa més per a penjar el codi a mà. Feu clic a l'àrea de text per a realçar tot el codi i llavors copieu-lo i enganxeu-lo en un nou fitxer, anomeneu-lo <code>configuration.php</code> i pengeu-lo a la carpeta arrel del lloc.
|
||||
NOTICEMBLANGNOTDEFAULT=L'idioma per a l'mbstring PHP no està establert com a neutral. Es pot establir localment introduïnt <strong>php_value mbstring.language neutral</strong> al <code>.htaccess</code>.
|
||||
NOTICEMBSTRINGOVERLOAD=La sobrecàrrega per a funcions de cadenes MB del PHP està activada. Es pot desactivar localment introduïnt <strong>php_value mbstring.func_overload 0</strong> al <code>.htaccess</code>.
|
||||
OFF=Desactivat
|
||||
OLD SITE ENCODING=Codificació de lloc antiga
|
||||
OLD TABLE PREFIX=Prefix de taula antic
|
||||
ON=Activat
|
||||
OUTPUT BUFFERING=Emmagatzematge a la memòria intermèdia de sortida (Output Buffering)
|
||||
PAGE_TITLE=Instal·lador web del Joomla!
|
||||
PASSWORD=Contrasenya
|
||||
PHP VERSION=Versió del PHP
|
||||
PICKYOURCHOICEOFLANGS=Seleccioneu l'idioma a utilitzar durant les passes d'instal·lació del Joomla!
|
||||
POINTEREOF=INESPERAT: No es pot establir el punter de fitxer rere el final de fitxer
|
||||
PRE-INSTALLATION CHECK=Comprovació de preinstal·lació
|
||||
PRETITLE=Comprovació de preinstal·lació per a
|
||||
PREVIOUS=Anterior
|
||||
QUERY=Consulta
|
||||
READ=Lectura
|
||||
RECOMMENDED=Recomanat
|
||||
RECOMMENDED SETTINGS=Paràmetres recomanats
|
||||
REGISTER GLOBALS=Registra els globals
|
||||
REQUIRED SETTINGS=Paràmetres requerits
|
||||
REMOVEINSTALLATION=RECORDEU <br/>ELIMINAR EL DIRECTORI D'INSTAL·LACIÓ<br />No podreu anar més enllà d'aquest punt fins que elimineu el directori d'instal·lació. Aquesta és una característica de seguretat del Joomla!
|
||||
SAFE MODE=Mode segur
|
||||
SAMPLE DATA INSTALLED SUCCESSFULLY=Les dades de mostra s'han instal·lat amb èxit!
|
||||
SAVE FTP PASSWORD=Desa la contrasenya d'FTP
|
||||
SCRIPT OPERATIONS FAILED=Han fallat les operacions de l'script!
|
||||
SEARCH=Cerca
|
||||
SELECT LANGUAGE=Seleccioneu un idioma
|
||||
SELECT TYPE=Seleccioneu el tipus
|
||||
SESSION AUTO START=Inici automàtic de sessió
|
||||
SESSION PATH SET=S'ha definit el camí de sessió!
|
||||
SESSION PATH WRITABLE=Es pot escriure al camí de sessió
|
||||
SITE=Lloc
|
||||
SITE MIGRATION=Migració de lloc
|
||||
SITE NAME=Nom del lloc
|
||||
SITE PATH=Camí del lloc
|
||||
SITE URL=URL del lloc
|
||||
SOME PATHS MAY BE UNWRITABLE=<strong>Avís: Alguns camins poden no tenir permís d'escriptura!</strong>
|
||||
SQL SCRIPT INSTALLED SUCCESSFULLY=L'script SQL s'ha instal·lat amb èxit!
|
||||
START IMPORT=Inicia la importació
|
||||
STDERRORMSG=Temporalment aquest lloc és no disponible.<br /> Si us plau notifiqueu-ho a l'administrador del sistema.
|
||||
STDMETADESC=Joomla! - el sistema de gestió de continguts i motor de portals dinàmics
|
||||
STDMETAKEYS=joomla, Joomla
|
||||
STDOFFLINEMSG=Aquest lloc és fora de servei per manteniment.<br /> Torneu un poc més tard.
|
||||
STEPS=Passes
|
||||
STOPPEDONERROR=S'ha aturat per un error
|
||||
STOPPEDATLINE=S'ha aturat a la línia
|
||||
TABLE PREFIX=Prefix de taula
|
||||
TIPBACKUP=Es substituirà qualsevol taula de còpia de seguretat que es trobi d'instal·lacions del Joomla!
|
||||
TIPCOLLATIONNONUTF=<p>Aquesta versió del MySQL no disposa de suport UTF-8 que és la codificació requerida.</p><p>Es recomana que actualitzeu la base de dades a una versió més nova que la 4.1.2. Si això no és possible, el Joomla! emmagatzemarà el contingut codificat en utf-8 a la base de dades en un mode compatible cap enrere. En aquest mode no és possible seleccionar un ordre alfabètic i s'utilitzarà un per defecte.</p>
|
||||
TIPCOLLATIONUTF=<p>Aquesta versió del MySQL inclou suport UTF-8 que és la codificació requerida.</p><p>Trieu un ordre alfabètic de la llista. Si no n'apareix cap per al vostre idioma serà perquè l'ordre alfabètic per defecte <em>utf8_general_ci</em> és adient.</p>
|
||||
TIPCONFSTEPS=<br />Introduïu la vostra adreça electrònica, serà l'adreça electrònica del superadministrador del lloc.<br />Introduïu la contrasenya i confirmeu-la als camps següents. Aquesta serà la contrasenya que necessitareu al final del procés d'instal·lació per a iniciar sessió al tauler de control d'administrador juntament amb el nom d'usuari <strong>admin</strong>.<br /> Si esteu fent una migració podeu ignorar aquesta secció ja que es migrarà automàticament la configuració actual.
|
||||
TIPDATABASE=Alguns amfitrions només permeten un nom de base de dades per compte. Si aquest és el vostre cas utilitzeu l'opció de prefix de taula a la secció següent de configuració avançada per a distingir més d'un lloc Joomla!
|
||||
TIPDATABASESTEPS=<p>Configurar el Joomla! per tal que funcioni al vostre servidor implica quatre passes ben senzilles...</p> <p>En aquesta passa de configuració de la base de dades:</p><h2>Configuració bàsica</h2><p>Seleccioneu el tipus de base de dades de la llista desplegable. Per regla general serà <strong>mysql</strong>.</p> <p>Introduïu el nom de l'amfitrió del servidor de base de dades en el qual s'instal·larà el Joomla! Nota: Pot no ser necessàriament el mateix que el servidor web per tant consulteu-ho al vostre proveïdor en cas de dubte.</p>\n <p>Introduïu el nom d'usuari de MySQL, la contrasenya, i el nom de la base de dades que desitgeu utilitzar amb el Joomla! Han d'existir ja per a la base de dades que aneu a utilitzar.</p><h2>Configuració avançada</h2> <p> Seleccioneu com gestionar les taules existents d'una instal·lació anterior.</p><p>Introduïu un prefix a utilitzar per les taules per a aquesta instal·lació del Joomla!</p>
|
||||
TIPFTPCONFSTEPS=<p>Degut a restriccions de permisos del sistema de fitxers, a Linux i en altres sistemes Unix, i a restriccions pel mode segur (Safe Mode) del PHP, per tal que tots els usuaris puguin utilitzar els instal·ladors del Joomla! existeix una capa d'FTP per a gestionar la manipulació del sistema de fitxers.<br/>Introduïu un nom d'usuari d'FTP i una contrasenya amb accés al directori arrel del Joomla!, aquest serà el compte d'FTP que gestioni totes les operacions al sistema de fitxers quan el Joomla! requereixi accés FTP per a completar una tasca.<br/>Per motius de seguretat, el millor és crear un compte per separat d'usuari d'FTP amb accés només a la instal·lació del Joomla! i no al servidor web sencer, si disposeu d'aquesta opció.</p><p><b>Nota:</b> Si la instal·lació es fa en un sistema operatiu Windows <b>no</b> es necessita la capa d'FTP
|
||||
TIPHOST=Normalment <strong>localhost</strong> o bé un nom d'amfitrió proporcionat pel proveïdor d'allotjament
|
||||
TIPINSTALLDEFAULT=Es recomana especialment als novells instal·lar-ho. Això instal·larà contingut de mostra per defecte que ve inclòs al paquet d'instal·lació del Joomla!
|
||||
TIPLOADMIGRATION=L'script de migració s'ha de crear al lloc antic utilitzant l'eina <code>com_migrator</code>. Introduïu el prefix de taula del lloc antic i també la codificació que s'hi utilitzava (paràmetre _ISO del fitxer d'idioma o bé com es pot veure a info/codificació/font del navegador).
|
||||
TIPUPLOADED=Ja he penjat l'script de migració al servidor (p.ex. via FTP/SCP)
|
||||
TIPMIGRATION=Aquest script és un script de migració del Joomla! 1.0.
|
||||
TIPLOADSQL=Els scripts SQL de migració del Joomla! 1.5 han de ser compatibles amb Joomla 1.5 i haurien de tenir l'apropiat prefix de taula.
|
||||
TIPPASSWORD=Per a la seguretat del lloc és obligatori utilitzar una contrasenya per al compte del MySQL. Es tracta de la mateixa contrasenya utilitzada per a accedir a la base de dades. De nou això pot ser proporcionat pel vostre proveïdor d'allotjament.
|
||||
TIPPREFIX=No utilitzeu 'bak_' ja que s'utilitza per a taules de còpia de seguretat
|
||||
TIPPREINSTALL=Si algun d'aquests elements no és suportat (marcat com a <strong><font color="#ff0000">No</font></strong>) el vostre sistema no compleix els requeriments mínims necessaris. Preneu les accions apropiades per a corregir els errors. Fallir amb això provocaria que la instal·lació del Joomla! no funcionàs correctament.
|
||||
TIPRECOMSETTINGS=Aquests paràmetres són els recomanats per al PHP per tal d'assegurar una plena compatibilitat amb el Joomla!<br />\nPerò així i tot el Joomla! funcionarà si els vostres paràmetres no coincideixen amb els recomanats.
|
||||
TIPTYPE=Probablement sigui <strong>MySQL</strong>
|
||||
TIPUSER=Això pot ser el nom d'usuari del MySQL per defecte <strong>root</strong> o bé un nom d'usuari proporcionat pel proveïdor d'allotjament, o bé un que hagueu creat mentre configuràveu el servidor de base de dades.
|
||||
TIPXML=Utilitzeu-ho per a provar la instal·lació d'altres plataformes de bases de dades
|
||||
TOOMANYLINES=En aquest punt la consulta actual inclou més de %s línies d'abocament. Això és degut probablement a un ítem de contingut gran o tal vegada a un missatge del fòrum
|
||||
UNABLE TO AUTODETECT THE FTP ROOT FOLDER=No s'ha pogut detectar automàticament la carpeta arrel de l'FTP
|
||||
UNABLETOSETOFFSET=INESPERAT: No es pot establir el punter de fitxer a l'òfset:
|
||||
UNWRITABLE=No es pot escriure
|
||||
UPLOAD AND EXECUTE=Penja i executa
|
||||
UPLOADFILESIZE=La mida de fitxer per a penjar màxima del vostre servidor és %s
|
||||
USER=Usuari
|
||||
USER NAME=Nom d'usuari
|
||||
USERNAME=Nom d'usuari
|
||||
VALIDDBDETAILS=Els detalls de la base de dades que heu proporcionat són incorrectes i/o buits.
|
||||
VALIDCOLLATION=No s'ha seleccionat cap ordre alfabètic. Premeu D'acord per a continuar amb els valors per defecte. Premeu Cancel·la per a tornar.
|
||||
VALIDHOST=Introduïu el nom de l'amfitrió
|
||||
VALIDNAME=Introduïu el nom de la base de dades
|
||||
VALIDTYPE=Seleccioneu el tipus de base de dades
|
||||
VALIDFTPHOST=Introduïu un amfitrió correcte d'FTP
|
||||
VALIDFTPUSER=Introduïu un nom d'usuari
|
||||
VALIDFTPPASS=Introduïu una contrasenya d'FTP
|
||||
VALIDPREFIX=Heu d'introduir un prefix de taula MySQL per tal que el Joomla! funcioni correctament
|
||||
VALIDFTP=La configuració de l'FTP és vàlida
|
||||
VALIDUSER=Introduïu un nom d'usuari per a la base de dades
|
||||
VERIFY FTP SETTINGS=Verifica la configuració de l'FTP
|
||||
VERSION#=Versió 1.5
|
||||
WARNADMINPASSWORD=Introduïu una contrasenya d'administrador vàlida
|
||||
WARNADMINPASSWORDDOESNTMATCH=La contrasenya d'administrador no coincideix amb la del camp de confirma contrasenya d'administrador
|
||||
WARNBACKINGUPDB=S'han produït alguns errors en fer la còpia de seguretat de la base de dades.
|
||||
WARNCOOKIESNOTENABLED=Les galetes no sembla que estiguin habilitades al vostre navegador. No podreu instal·lar l'aplicació amb aquesta característica inhabilitada. Alternativament, hi podria haver també un problema amb el <strong>session.save_path</strong> del servidor, si aquest és el cas consulteu amb el vostre proveïdor d'allotjament si no sabeu com arreglar-ho.
|
||||
WARNCREATEDB=S'ha produït un error quan s'intentava crear la base de dades %s.<br/>Potser que l'usuari no tengui privilegis per a crear una base de dades. La base de dades requerida s'ha de crear per separat abans que pugueu instal·lar el Joomla!
|
||||
WARNDELETEDB=S'han produït alguns errors en eliminar la base de dades
|
||||
WARNEMAILADDRESS=Introduïu una adreça electrònica vàlida
|
||||
WARNFTPENABLE=La desactivació de l'FTP podria causar problemes amb la instal·lació d'extensions del Joomla!
|
||||
WARNICONV=L'extensió del PHP iconv no es troba carregada i es necessita per a la migració
|
||||
WARNINSTALLFILE=Ha fallat la càrrega! - Les càrregues de fitxers no es troben habilitades al PHP
|
||||
WARNINSTALLZLIB=Ha fallat la càrrega! - L'extensió del PHP Zlib no es troba carregada
|
||||
WARNNOFILE=Ha fallat la càrrega! - no s'ha trobat el fitxer carregat
|
||||
WARNUNPACK=Ha fallat la càrrega! - s'ha produït un error de descompressió d'arxiu
|
||||
WARNNODATA=No s'ha instal·lat cap dada de mostra ni d'altre tipus. Feu clic a D'acord per a continuar. Feu clic a Cancel·la per a repetir aquesta passa.
|
||||
WARNNOTCONNECTDB=No s'ha pogut connectar a la base de dades. Número retornat pel connector: %s
|
||||
WARNSITENAME=Introduïu un nom per al lloc
|
||||
WARNPOPULATINGDB=S'han produït alguns errors mentre s'omplia la base de dades
|
||||
WARNUPLOADFAILURE=Ha fallat la càrrega! Comproveu que es pugui escriure als directoris 'tmp' i 'installation/sql/migration'.
|
||||
WRITE=Escriu
|
||||
WORLD=Món
|
||||
WRITABLE=Es pot escriure
|
||||
XML SUPPORT=Suport per a l'XML
|
||||
YES=Sí
|
||||
YOUR E-MAIL=Correu electrònic
|
||||
ZLIB COMPRESSION SUPPORT=Suport per a la compressió Zlib
|
||||
19
www/-installation-/language/ca-ES/ca-ES.xml
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<metafile version="1.5" client="installation" >
|
||||
<name>Catalan-ES</name>
|
||||
<version>1.5.9</version>
|
||||
<creationDate>March 2009</creationDate>
|
||||
<author>www.joomla.cat</author>
|
||||
<copyright>Copyright (C) 2005 - 2009 Open Source Matters. All rights reserved.</copyright>
|
||||
<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
|
||||
<description>Catalan language file for web installer</description>
|
||||
<metadata>
|
||||
<name>Catalan</name>
|
||||
<tag>ca-ES</tag>
|
||||
<rtl>0</rtl>
|
||||
<locale>ca_ES.utf-8, ca_ES.utf8, ca-ES.utf8, ca_ES.UTF-8, ca_ES.UTF-8@euro, ca, ca_ES, Catalan_Standard, catalan</locale>
|
||||
<winCodePage>iso-8859-1</winCodePage>
|
||||
<backwardLang>catalan</backwardLang>
|
||||
</metadata>
|
||||
<params />
|
||||
</metafile>
|
||||
6
www/-installation-/language/ca-ES/index.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<!-- saved from url=(0065)http://downloads.joomlacode.org/frsrelease/1/5/7/15765/index.html -->
|
||||
<HTML><HEAD>
|
||||
<META http-equiv=Content-Type content="text/html; charset=windows-1251">
|
||||
<META content="MSHTML 6.00.5730.11" name=GENERATOR></HEAD>
|
||||
<BODY bgColor=#ffffff></BODY></HTML>
|
||||
241
www/-installation-/language/en-GB/en-GB.ini
Normal file
@ -0,0 +1,241 @@
|
||||
# $Id: en-GB.ini 11393 2009-01-05 02:11:06Z ian $
|
||||
# Joomla! Project
|
||||
# Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
# License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
|
||||
# Note : All ini files need to be saved as UTF-8 - No BOM
|
||||
|
||||
ACTUAL=Actual
|
||||
ADMIN=Admin
|
||||
ADMIN LOGIN IN MIGRATED CONTENT WAS KEPT=Admin<br />login in migrated content was kept.
|
||||
ADMIN PASSWORD=Admin Password
|
||||
ADMIN PASSWORD IN MIGRATED CONTENT WAS KEPT=Admin password in migrated content was kept.
|
||||
ADMINISTRATION LOGIN DETAILS=Administration Login Details
|
||||
ADVANCED=Advanced
|
||||
ADVANCED SETTINGS=Advanced Settings
|
||||
ALL RIGHTS RESERVED=All rights reserved.
|
||||
AN ERROR HAS OCCURRED=An error has occurred.
|
||||
AUTOFIND FTP PATH=Autofind FTP Path
|
||||
BACKUP OLD TABLES=Backup Old Tables
|
||||
BASIC=Basic
|
||||
BASIC SETTINGS=Basic Settings
|
||||
CANT OPEN FILE FOR IMPORT=Can't open file (%s) for import.
|
||||
CANTREADPOINTER=Unexpected: Can't read the file pointer offset.
|
||||
CHECKDUMPFILE=The name of your dump file should contain only alphanumeric characters. Please verify and rename if it doesn't.
|
||||
CHECK AGAIN=Check Again
|
||||
CHOOSE LANGUAGE=Choose Language
|
||||
CLICKTOINSTALLDEFAULT=Install Sample Data
|
||||
COLLATION=Collation
|
||||
CONFIGURATION=Configuration
|
||||
CONFPROBLEM=Your configuration file or directory is not writable or there was a problem creating the configuration file. You will have to upload the following code by hand. Click in the text area to highlight all of the code and then paste into a new text file. Name this file 'configuration.php' and upload it to your site root folder.
|
||||
CONFTITLE=Confirm the Admin E-mail and Password.
|
||||
CONGRATSEOF=Congratulations! End of file reached, assuming OK
|
||||
CONGRATULATIONS=Congratulations! Joomla! is now installed.
|
||||
CONNECTION FAIL=Failed to connect to database server. Please check the hostname, username and password.
|
||||
CONNECTION SETTINGS=Connection Settings
|
||||
CONFIRM ADMIN PASSWORD=Confirm Admin Password
|
||||
DATABASE=Database
|
||||
DATABASE COLLATION=Database Collation
|
||||
DATABASE CONFIGURATION=Database Configuration
|
||||
DATABASE ERRORS REPORTED=Database Errors Reported
|
||||
DATABASE NAME=Database Name
|
||||
DATABASE TYPE=Database Type
|
||||
DELAYMSG=Now waiting %s milliseconds before starting next session...
|
||||
DIRECTIVE=Directive
|
||||
DIRECTORY PERMISSIONS=Directory Permissions
|
||||
DISPLAY ERRORS=Display Errors
|
||||
DROP EXISTING TABLES=Delete existing tables
|
||||
ENABLEFTPDESC= Enable FTP File system Layer
|
||||
ENTERSITENAME=Enter the name of your Joomla! site.
|
||||
ERROR=Error
|
||||
ERROR INSTALLING SQL SCRIPT=Error installing SQL script
|
||||
EXECUTE=Execute
|
||||
FILESIZEUNKNOWN=Unable to determine the filesize of
|
||||
FILE PERMISSIONS=File Permissions
|
||||
FILE UPLOADS=File Uploads
|
||||
FINALIZEINSTALL=Please press Next to finalise your install.
|
||||
FINISH=Finish
|
||||
FINISHBUTTONS=<p>Click the Site button to view your Joomla! Web site or the Admin button to take you to your administrator login.</p>
|
||||
FTP CONFIGURATION=FTP Configuration
|
||||
FTP HOST=FTP Host
|
||||
FTP PASSWORD=FTP Password
|
||||
FTP PORT=FTP Port
|
||||
FTP USER=FTP User
|
||||
FTP ROOT PATH=FTP Root Path
|
||||
GNU/GPL LICENSE=GNU General Public License
|
||||
GROUP=Group
|
||||
HOST NAME=Host Name
|
||||
IGNORE=Ignore
|
||||
INSTALL DEFAULT SAMPLE DATA=Install Default Sample Data
|
||||
INSTALLATION=Installation
|
||||
INSTALLATIONREMOVED=Click here when the directory has been removed.
|
||||
INVALIDFTP=The FTP settings are not valid or your FTP server is not compatible with Joomla!:
|
||||
INVALIDROOT=The specified FTP Directory is not the directory of this Joomla! installation
|
||||
ISFREESOFTWARE=is Free Software released under the GNU/GPL v2.0 License.
|
||||
JOOMLA!=Joomla!
|
||||
LANGUAGE=Language
|
||||
LANGUAGEINFO=On the Joomla! Help Site, you will find an easy, step-by-step guide to installing your own language pack in Joomla! You will find a list of links to available language packs.<br /><br />Click the button on the right to open the Help Site in a new window.
|
||||
LANGUAGEBUTTONLINEONE=Joomla! in your own Language?
|
||||
LANGUAGEBUTTONLINETWO=Visit the Joomla! Help Site for more information and downloads.
|
||||
LICENSE=License
|
||||
LOADSAMPLEORMIGRATE=Load Sample Data, Restore or Migrate Backed Up Content
|
||||
LOADSQLFILE=Loading SQL file. Please wait.
|
||||
LOADSQLINSTRUCTIONS1=<strong>Important!</strong>: It is strongly recommended that new Joomla! users install the default sample data. To do this, select the option <i>and</i> click on the button <i>before</i> moving to the next stage.
|
||||
LOADSQLINSTRUCTIONS2=Before leaving the installation, you can populate the site database with data. There are three ways to do this:
|
||||
LOADSQLINSTRUCTIONS3=<strong>1. Default sample data</strong> can be inserted. To do this, select the first option and click the Install Sample Data button.
|
||||
LOADSQLINSTRUCTIONS4=<strong>2a. A Joomla! 1.5.x compatible SQL script file</strong> can be uploaded from a localhost and executed on the site. This could be for installing localised sample data or restoring a Joomla! 1.5.x backup. The script should have the correct table prefixes, be in UTF-8 encoding and comply with the Joomla! 1.5.x database schema.
|
||||
LOADSQLINSTRUCTIONS5=<strong>2b. Migrate content from previous versions of Joomla!</strong>. Selecting the Load Migration Script option enables support for the migration of older Joomla! 1.0.x version database dumps to a new Joomla! 1.5.x site. The required conversions are performed on-the-fly and the migration script file can be created on the older site by using the <code>com_migrator</code> component.<br /> For further information about the component and the migration procedure, please see the <a href="http://docs.joomla.org/Migrating_from_1.0.x_to_1.5_Stable" target="_blank">Joomla! 1.5 Migration Guide</a>.
|
||||
LOADSQLINSTRUCTIONS6=You can upload uncompressed SQL script files, zip-packed script files and gz-packed script files. Packed files may contain only one SQL script file. If your file is too big to handle or causing memory and time limit errors, upload the uncompressed file into the /installation/sql/migration/ folder. Rename it <code>migrate.sql</code> and then tick the "I have already uploaded..." option.<br />
|
||||
LOADSQLINSTRUCTIONS7=<strong>3. Clean Installation</strong>: If you wish to perform a clean installation, enter the site name, admin e-mail and choose a password. Then proceed to the final step by clicking <em>Next</em>.
|
||||
MAGIC QUOTES RUNTIME=Magic Quotes Runtime
|
||||
MAIN CONFIGURATION=Main Configuration
|
||||
MAXIMUM UPLOAD SIZE=Maximum Upload Size
|
||||
MB LANGUAGE IS DEFAULT=MB Language is Default
|
||||
MB STRING OVERLOAD OFF=MB String Overload Off
|
||||
MIGRATION COMPLETED=Migration completed
|
||||
MIGRATION FAILED=Migration failed
|
||||
MIGRATION LOAD SCRIPT=Migration Load Script
|
||||
MIGRATION OUTPUT=Migration Output
|
||||
MIGRATION SCRIPT=Migration Script
|
||||
MIGRATION SUCCESSFUL=Migration successful. Press Next to continue.
|
||||
MIGRATETITLE=Load Migration Script
|
||||
MYSQL SUPPORT=MySQL Support
|
||||
MYSQLPREFIXINVALIDCHARS=The MySQL table prefix must start with a letter and be followed by only letters, numbers or underscores.
|
||||
MYSQLDBNAMEINVALIDCHARS=The MySQL database name must start with a letter and be followed by only letters, numbers or underscores.
|
||||
MYSQLPREFIXTOOLONG=The MySQL table prefix must be a maximum of 15 characters.
|
||||
MYSQLDBNAMETOOLONG=The MySQL database name must be a maximum of 64 characters.
|
||||
NEEDTOUPLOADFILE=Or you have to upload the file to the server.
|
||||
NEXT=Next
|
||||
NO=No
|
||||
NOCONNECT=Could not connect to the FTP server
|
||||
NOCHMODDIRS=Do not CHMOD directories (use server defaults).
|
||||
NOCHMODFILES=Do not CHMOD files (use server defaults).
|
||||
NODELE=The function "DELE" failed.
|
||||
NODIRECTORYLISTING=Could not retrieve a directory listing from the FTP server.
|
||||
NOJAVASCRIPTWARNING=JavaScript appears to be disabled in your browser. Please enable JavaScript before continuing.
|
||||
NOLOGIN=Could not Login to the FTP server.
|
||||
NOLIST=The function "LIST" failed.
|
||||
NOMKD=The function "MKD" failed.
|
||||
NONLST=The function "NLST" failed.
|
||||
NONNUMERICOFFSET=UNEXPECTED: Non-numeric values for start and offset
|
||||
NOPWD=The function "PWD" failed.
|
||||
NORETR=The function "RETR" failed.
|
||||
NORMD=The function "RMD" failed.
|
||||
NOROOT=Could not access the specified FTP directory.
|
||||
NOSTOR=The function "STOR" failed.
|
||||
NOSYST=The function "SYST" failed.
|
||||
NO FILE SELECTED=No file selected.
|
||||
NOTICEYOUCANSTILLINSTALL=You can still continue the installation as the configuration settings will be displayed at the end. You will have to manually upload the code. Click in the text area to highlight all of the code and then paste into a new text file. Name this file 'configuration.php' and upload it to your site root folder.
|
||||
NOTICEMBLANGNOTDEFAULT=PHP mbstring language is not set to neutral. This can be set locally by entering <strong>php_value mbstring.language neutral</strong> in your <code>.htaccess</code> file.
|
||||
NOTICEMBSTRINGOVERLOAD=PHP mbstring function overload is set. This can be turned off locally by entering <strong>php_value mbstring.func_overload 0</strong> in your <code>.htaccess</code> file.
|
||||
OFF=Off
|
||||
OLD SITE ENCODING=Old Site Encoding
|
||||
OLD TABLE PREFIX=Old Table Prefix
|
||||
ON=On
|
||||
OUTPUT BUFFERING=Output Buffering
|
||||
PAGE_TITLE=Joomla! Web Installer
|
||||
PASSWORD=Password
|
||||
PHP VERSION=PHP Version
|
||||
PICKYOURCHOICEOFLANGS=Please select the language to use during the Joomla! installation steps:
|
||||
POINTEREOF=UNEXPECTED: Can't set file pointer behind the end of file.
|
||||
PRE-INSTALLATION CHECK=Pre-installation Check
|
||||
PRETITLE=Pre-installation check for
|
||||
PREVIOUS=Previous
|
||||
QUERY=Query
|
||||
READ=Read
|
||||
RECOMMENDED=Recommended
|
||||
RECOMMENDED SETTINGS=Recommended Settings
|
||||
REGISTER GLOBALS=Register Globals
|
||||
REQUIRED SETTINGS=Required Settings
|
||||
REMOVEINSTALLATION=PLEASE REMEMBER TO COMPLETELY<br />REMOVE THE INSTALLATION DIRECTORY.<br />You will not be able to proceed beyond this point until the installation directory has been removed. This is a security feature of Joomla!.
|
||||
SAFE MODE=Safe Mode
|
||||
SAMPLE DATA INSTALLED SUCCESSFULLY=Sample data installed successfully.
|
||||
SAVE FTP PASSWORD=Save FTP Password
|
||||
SCRIPT OPERATIONS FAILED=Script Operations Failed!
|
||||
SEARCH=Search
|
||||
SELECT LANGUAGE=Select Language
|
||||
SELECT TYPE=Select Type
|
||||
SESSION AUTO START=Session Auto Start
|
||||
SESSION PATH SET=Session Path Set!
|
||||
SESSION PATH WRITABLE=Session Path Writable
|
||||
SITE=Site
|
||||
SITE MIGRATION=Site Migration
|
||||
SITE NAME=Site Name
|
||||
SITE PATH=Site Path
|
||||
SITE URL=Site URL
|
||||
SOME PATHS MAY BE UNWRITABLE=<strong>Warning: Some paths may be unwritable!</strong>
|
||||
SQL SCRIPT INSTALLED SUCCESSFULLY=SQL Script Installed Successfully!
|
||||
START IMPORT=Start Import
|
||||
STDERRORMSG=This site is temporarily unavailable.<br /> Please notify the System Administrator.
|
||||
STDMETADESC=Joomla! - the dynamic portal engine and content management system
|
||||
STDMETAKEYS=joomla, Joomla
|
||||
STDOFFLINEMSG=This site is down for maintenance.<br /> Please check back again soon.
|
||||
STEPS=Steps
|
||||
STOPPEDONERROR=Stopped on error
|
||||
STOPPEDATLINE=Stopped at the line
|
||||
TABLE PREFIX=Table Prefix
|
||||
TIPBACKUP=Any existing backup tables from previous Joomla! installations will be replaced.
|
||||
TIPCOLLATIONNONUTF=<p>This version of MySQL does not have UTF-8 support, which is the required encoding.</p><p>It is recommended that you upgrade your database to a version newer than 4.1.2. If this is not possible, Joomla! will store UTF-8 encoded content in your existing database in a backward compatibe mode. Collation selection is not possible in this mode and a default collation will be used.</p>
|
||||
TIPCOLLATIONUTF=<p>This version of MySQL includes UTF-8 support, which is the required encoding.</p><p>Choose a collation from the list. If none appears for your language, the default collation <em>utf8_general_ci</em> is suitable.</p>
|
||||
TIPCONFSTEPS=<br />Enter your e-mail address. This will be the e-mail address of the Web site Super Administrator.<br />Enter a new password and then confirm it in the appropriate fields. Along with the username <strong>admin</strong>, this will be the password that you will use to login to the Administrator Control Panel at the end of the installation.<br /> If you are migrating, you can ignore this section. Your current settings will be automatically migrated.
|
||||
TIPDATABASE=Some hosting providers allow only a specific database name per account. If this is the case with your setup, use the table prefix option in the Advanced Settings section below to differentiate more than one Joomla! site.
|
||||
TIPDATABASESTEPS=<p>Setting up Joomla! to run on your server involves four easy steps.</p> <p>The first step is database configuration. Choose your preferred settings: </p><h2>Basic Settings</h2><p>Select the type of database from the drop down list. This will generally be <strong>MySQL</strong>.</p> <p>Enter the hostname of the database server Joomla! will be installed on. This may not necessarily be the same as your Web server so check with your hosting provider if you are not sure.</p>\n <p>Enter the MySQL username, password and database name you wish to use with Joomla!. These must already exist for the database you are going to use.</p><h2>Advanced Settings</h2> <p> Select how to handle existing tables from a previous installation.</p><p>Enter a table prefix to be used for this Joomla! installation.</p>
|
||||
TIPFTPCONFSTEPS=<p>Due to file system permission restrictions on Linux and other Unix systems (and PHP Safe Mode restrictions), an FTP layer is used to handle file system manipulation and enable Joomla! installers.<br /><br />Enter an FTP username and password with access to the Joomla! root directory. This will be the FTP account that handles all file system operations when Joomla! requires FTP access to complete a task.<br /><br />For security reasons and if the option is available, it is best to create a separate FTP user account with access to the Joomla! installation only and not the entire Web server.</p><p><b>Note:</b> If you are installing on a Windows Operating System, the FTP layer is <b>not</b> required.
|
||||
TIPHOST=This is usually <strong>localhost</strong> or a host name provided by the hosting provider.
|
||||
TIPINSTALLDEFAULT=Installing sample data is strongly recommended for beginners. This will install sample content that is included in the Joomla! installation package.
|
||||
TIPLOADMIGRATION=The migration script needs to be created on the old site by the <code>com_migrator</code> tool to conform. Enter the table prefix of the old site and enter the encoding used in old site (_ISO setting in language file or as seen in browser info/encoding/source).
|
||||
TIPUPLOADED=I have already uploaded the migration script to the server (e.g. via FTP/SCP)
|
||||
TIPMIGRATION=This script is a Joomla! 1.0 migration script.
|
||||
TIPLOADSQL=Joomla! 1.5 migration SQL scripts need to be Joomla 1.5.x compatible and should have the appropriate table prefix.
|
||||
TIPPASSWORD=Using a password for the MySQL account is mandatory for site security. This is the same password used to access your database. This may be predefined by your hosting provider.
|
||||
TIPPREFIX=Do not use the prefix 'bak_'. This is used for backup tables.
|
||||
TIPPREINSTALL=If any of these items are not supported (marked as <strong><font color="#ff0000">No</font></strong>), your system does not meet the minimum requirements for installation. Please take appropriate actions to correct the errors. Failure to do so could lead to your Joomla! installation not functioning properly.
|
||||
TIPRECOMSETTINGS=These are the recommended settings for PHP in order to ensure full compatibility with Joomla!.<br />\nJoomla! will still operate even if your settings do not match.
|
||||
TIPTYPE=This is probably <strong>MySQL</strong>
|
||||
TIPUSER=This can be the default MySQL username <strong>root</strong>, a username provided by your hosting provider, or one that you created in setting up your database server.
|
||||
TIPXML=Use for testing install of other database platforms
|
||||
TOOMANYLINES=At this point, the current query includes more than %s dump lines. This most likely due to a large content item or perhaps a forum post.
|
||||
UNABLE TO AUTODETECT THE FTP ROOT FOLDER=Unable to auto-detect the FTP root folder.
|
||||
UNABLETOSETOFFSET=UNEXPECTED: Can't set file pointer to offset:
|
||||
UNWRITABLE=Unwritable
|
||||
UPLOAD AND EXECUTE=Upload and Execute
|
||||
UPLOADFILESIZE=Your server's maximum file upload size is %s.
|
||||
USER=User
|
||||
USER NAME=Username
|
||||
USERNAME=Username
|
||||
VALIDDBDETAILS=The database details provided are incorrect and/or empty.
|
||||
VALIDCOLLATION=No collation was selected. To continue with default, press OK. Press Cancel to return.
|
||||
VALIDHOST=Please enter the host name:
|
||||
VALIDTYPE=Please select the database type:
|
||||
VALIDFTPHOST=Please enter a correct FTP host:
|
||||
VALIDFTPUSER=Please enter a username:
|
||||
VALIDFTPPASS=Please enter an FTP password:
|
||||
VALIDPREFIX=You must enter a MySQL table prefix for Joomla! to operate correctly.
|
||||
VALIDFTP=The FTP settings are valid.
|
||||
VALIDUSER=Please enter a database username:
|
||||
VERIFY FTP SETTINGS=Verify FTP Settings
|
||||
VERSION#=Version 1.5
|
||||
WARNADMINPASSWORD=Please enter a valid admin password:
|
||||
WARNADMINPASSWORDDOESNTMATCH=The Admin password does not match the confirm admin password field
|
||||
WARNBACKINGUPDB=Some errors occurred in backing up the database.
|
||||
WARNCOOKIESNOTENABLED=Cookies do not appear to be enabled on your browser client. You will not be able to install the application with this feature disabled. Alternatively, there could also be a problem with the server's <strong>session.save_path</strong>. If this is the case, please consult your hosting provider if you don't know how to check or fix this yourself.
|
||||
WARNCREATEDB=An error occurred while trying to create the database %s.<br />The user may not have enough privileges to create a database. The required database may need to be created separately before you can install Joomla!.
|
||||
WARNDELETEDB=Some errors occurred deleting the database.
|
||||
WARNEMAILADDRESS=Please enter a valid e-mail address.
|
||||
WARNFTPENABLE=Disabling FTP could cause problems with installing Joomla! Extensions
|
||||
WARNICONV=PHP iconv extension is not loaded and is needed for migration
|
||||
WARNINSTALLFILE=Upload failed! File uploads are not enabled in PHP.
|
||||
WARNINSTALLZLIB=Upload failed! The zlib extension for PHP is not loaded.
|
||||
WARNNOFILE=Upload failed! Uploaded file not found.
|
||||
WARNUNPACK=Upload failed! Archive unpack error.
|
||||
WARNNODATA=No sample data or other data installed. Click OK to continue. Click Cancel to redo this step.
|
||||
WARNNOTCONNECTDB=Could not connect to the database. Connector returned number: %s
|
||||
WARNSITENAME=Please enter a site name:
|
||||
WARNPOPULATINGDB=Some errors occurred while attempting to populate the database.
|
||||
WARNUPLOADFAILURE=Upload failed! Check that the 'tmp' and 'installation/sql/migration' directories are writable.
|
||||
WRITE=Write
|
||||
WORLD=World
|
||||
WRITABLE=Writable
|
||||
XML SUPPORT=XML Support
|
||||
YES=Yes
|
||||
YOUR E-MAIL=Your E-mail
|
||||
ZLIB COMPRESSION SUPPORT=Zlib Compression Support
|
||||
29
www/-installation-/language/en-GB/en-GB.xml
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Id: en-GB.xml 10511 2008-07-06 19:21:55Z willebil $ -->
|
||||
<metafile version="1.5" client="installation">
|
||||
<name>English(United Kingdom)</name>
|
||||
<version>1.5.9</version>
|
||||
<creationDate>March 2009</creationDate>
|
||||
<author>Joomla! Project</author>
|
||||
<authorEmail>admin@joomla.org</authorEmail>
|
||||
<authorUrl>www.joomla.org</authorUrl>
|
||||
<copyright>
|
||||
Copyright (C) 2005 - 2008 Open Source Matters. All rights
|
||||
reserved.
|
||||
</copyright>
|
||||
<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
|
||||
<description>English language file for web installer</description>
|
||||
<metadata>
|
||||
<name>English (United Kingdom)</name>
|
||||
<tag>en-GB</tag>
|
||||
<rtl>0</rtl>
|
||||
<locale>
|
||||
en_GB.utf8, en_GB.UTF-8, en_GB, eng_GB, en, english,
|
||||
english-uk, uk, gbr, britain, england, great britain, uk,
|
||||
united kingdom, united-kingdom
|
||||
</locale>
|
||||
<winCodePage>iso-8859-1</winCodePage>
|
||||
<backwardLang>english</backwardLang>
|
||||
</metadata>
|
||||
<params />
|
||||
</metafile>
|
||||
3
www/-installation-/language/en-GB/index.html
Normal file
@ -0,0 +1,3 @@
|
||||
<html>
|
||||
<body bgcolor="#FFFFFF"></body>
|
||||
</html>
|
||||
243
www/-installation-/language/es-ES/es-ES.ini
Normal file
@ -0,0 +1,243 @@
|
||||
# version 1.5.9 2009
|
||||
# Copyright (C) 2005 - 2009 Open Source Matters. All rights reserved.
|
||||
# license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
|
||||
# Translation: www.TodosJuntos.org Equipo de traducción de la comunidad hispana de Joomla!
|
||||
# Modificado por Joomla! Spanish www.joomlaspanish.org
|
||||
# Todos los archivos ini deben ser guardados como UTF-8 sin BOM All ini files must be saved as UTF-8 - NO BOM
|
||||
|
||||
ACTUAL=Actual
|
||||
ADMIN=Administración
|
||||
ADMIN LOGIN IN MIGRATED CONTENT WAS KEPT=Se mantuvo el nombre de usuario del administrador encontrado en el contenido migrado
|
||||
ADMIN PASSWORD=Contraseña del usuario admin
|
||||
ADMIN PASSWORD IN MIGRATED CONTENT WAS KEPT=Se mantuvo la contraseña del administrador encontrada en el contenido migrado
|
||||
ADMINISTRATION LOGIN DETAILS=Datos de entrada a la Administración
|
||||
ADVANCED=Avanzado
|
||||
ADVANCED SETTINGS=Configuración avanzada
|
||||
ALL RIGHTS RESERVED=Todos los derechos reservados
|
||||
AN ERROR HAS OCCURRED=Ha ocurrido un error
|
||||
AUTOFIND FTP PATH=Encontrar la ruta FTP automáticamente
|
||||
BACKUP OLD TABLES=Hacer una copia de las tablas existentes.
|
||||
BASIC=Básico
|
||||
BASIC SETTINGS=Configuración básica
|
||||
CANT OPEN FILE FOR IMPORT=No se puede abrir el archivo (%s) para importar el contenido.
|
||||
CANTREADPOINTER=NO ESPERADO: No se puede leer el offset del indicador.
|
||||
CHECKDUMPFILE=Por favor, debe renombrar el archivo de modo que sólo contenga caractéres alfanuméricos,
|
||||
CHECK AGAIN=Volver a comprobar
|
||||
CHOOSE LANGUAGE=Seleccione su idioma
|
||||
CLICKTOINSTALLDEFAULT=Instalar los datos de ejemplo predeterminados
|
||||
COLLATION=Colación
|
||||
CONFIGURATION=Configuración
|
||||
CONFPROBLEM=Su archivo o directorio de configuración no tiene permisos de escritura,\n o hubo un problema al crear el archivo de configuración. Deberá\n subir el siguiente código manualmente. Seleccione el área de texto para resaltar\n todo el código.
|
||||
CONFTITLE=Confirme el correo electrónico y la contraseña del usuario admin.
|
||||
CONGRATSEOF=Felicitaciones: se alcanzó el final del archivo, presumimos que fue correctamente.
|
||||
CONGRATULATIONS=¡Felicidades! Ha finalizado la instalación de Joomla! Spanish
|
||||
CONNECTION FAIL=Error al conectar con el servidor de la base de datos. Verifique que el nombre de usuario y la contraseña introducidos sean correctos.
|
||||
CONNECTION SETTINGS=Parámetros de la conexión
|
||||
CONFIRM ADMIN PASSWORD=Confirmar la contraseña del usuario admin.
|
||||
DATABASE=Base de datos
|
||||
DATABASE COLLATION=Colación de la base de datos.
|
||||
DATABASE CONFIGURATION=Configuración de la base de datos
|
||||
DATABASE ERRORS REPORTED=Se encontraron errores en la base de datos
|
||||
DATABASE NAME=Nombre de la base de datos
|
||||
DATABASE TYPE=Tipo de base de datos
|
||||
DELAYMSG=Esperando %s milisegundos antes de comenzar la siguiente sesión...
|
||||
DIRECTIVE=Directiva
|
||||
DIRECTORY PERMISSIONS=Permisos de directorio
|
||||
DISPLAY ERRORS=Mostrar errores (display_errors)
|
||||
DROP EXISTING TABLES=Eliminar las tablas existentes
|
||||
ENABLEFTPDESC=Habilitar la capa FTP para la gestión de archivos.
|
||||
ENTERSITENAME=Escriba el nombre de su sitio web Joomla!
|
||||
ERROR=Error
|
||||
ERROR INSTALLING SQL SCRIPT=Error instalando el script SQL
|
||||
EXECUTE=Ejecutar
|
||||
FILESIZEUNKNOWN=Imposible determinar el tamaño del archivo
|
||||
FILE PERMISSIONS=Permisos de archivos
|
||||
FILE UPLOADS=Subida de archivos (file_uploads)
|
||||
FINALIZEINSTALL=Hacer clic en <em>Siguiente</em> para finalizar la instalación.
|
||||
FINISH=Finalizar
|
||||
FINISHBUTTONS=<p>Puede hacer clic en el botón "Portada" para ver la portada de su sitio web Joomla! o en el botón "Administración" para acceder al área de administración.</p>
|
||||
FTP CONFIGURATION=Configuración de FTP
|
||||
FTP HOST=Servidor FTP
|
||||
FTP PASSWORD=Contraseña de FTP
|
||||
FTP PORT=Puerto FTP
|
||||
FTP USER=Nombre del usuario FTP
|
||||
FTP ROOT PATH=Ruta a la carpeta de Joomla! desde la raíz FTP
|
||||
GNU/GPL LICENSE=Licencia GNU/GPL
|
||||
GROUP=Grupo
|
||||
HOST NAME=Nombre del sevidor
|
||||
IGNORE=Ignorar
|
||||
INSTALL DEFAULT SAMPLE DATA=Instalar contenido de ejemplo predeterminado (en español)
|
||||
INSTALLATION=Instalación
|
||||
INSTALLATIONREMOVED=Haga clic aqui cuando haya borrado el directorio
|
||||
INVALIDFTP=La configuración de FTP es inválida o el servidor FTP no es compatible con Joomla!:
|
||||
INVALIDROOT=El directorio FTP especificado no es el de esta instalación de Joomla!
|
||||
ISFREESOFTWARE=es software libre distribuido bajo la licencia GNU/GPL.<br /><a href="http://www.joomlaspanish.org/">Pack creado por Joomla! Spanish 2009</a> - <a href="http://www.webempresa.com/">Patrocinado por Web Empresa</a>
|
||||
JOOMLA!=Joomla!
|
||||
LANGUAGE=Idioma
|
||||
LANGUAGEINFO=En la página de ayuda de Joomla! sobre idiomas encontrará una explicación sencilla y paso a paso de cómo instalar el paquete de su idioma en Joomla!<br/>También encontrará una lista con enlaces a los paquetes de idioma disponibles.<br/>Al hacer clic sobre el enlace inferior de la derecha se abrirá el sitio de ayuda en una ventana nueva.
|
||||
LANGUAGEBUTTONLINEONE=¿Joomla! en su propio idioma?
|
||||
LANGUAGEBUTTONLINETWO=Visite el sitio de ayuda de Joomla! para más información y descarga de archivos.
|
||||
LICENSE=Licencia
|
||||
LOADSAMPLEORMIGRATE=Subir datos de ejemplo, restaurar o migrar contenido de respaldo
|
||||
LOADSQLFILE=Cargando un archivo SQL... espere, por favor.
|
||||
LOADSQLINSTRUCTIONS1=<strong>IMPORTANTE:</strong> Se recomienda a los principiantes que instalen el contenido de ejemplo en español o en su idioma. Para esto es necesario seleccionar esa opción y hacer clic sobre el botón antes de continuar hacia el siguiente paso.
|
||||
LOADSQLINSTRUCTIONS2=Antes de finaliar la instalación puede ingresar datos a la base de datos del sitio. Hay tres opciones para hacerlo:
|
||||
LOADSQLINSTRUCTIONS3=<strong>1. </strong> Puede cargar los <strong>datos de ejemplo predeterminados</strong>. Para hacerlo, seleccione la primera opción y haga clic sobre el botón "Instalar los datos de ejemplo predeterminados" (en español).
|
||||
LOADSQLINSTRUCTIONS4=<strong>2.</strong> Puede subir un archivo de un <strong>script SQL compatible con Joomla! 1.5</strong> y ejecutarlo en el servidor. <br />Ya sea para instalar <strong>datos de ejemplo en su idioma</strong> o para restaurar una copia de seguridad de Joomla! 1.5. <br />El script, debe tener los prefijos correctos en las tablas, estar codificado en UTF-8 y ser compatible con el esquema de bases de datos de Joomla! 1.5.
|
||||
LOADSQLINSTRUCTIONS5=<strong>3. Migrar contenidos de una versión anterior</strong>. Seleccionar "Cargar un script de migración" permite importar contenidos, utilizando una copia de seguridad de la base de datos de un sitio con una versión anterior de Joomla!, en el nuevo sitio con Joomla! 1.5. Las conversiones necesarias se hacen al vuelo, mientras se realiza la instalación. La copia de seguridad necesaria puede hacerse automáticamente utilizando el componente <code>com_migrator</code> en el sitio anterior.Para más información vea la <a href="http://help.joomla.org/content/view/1933/294/" target="_blank">Guía de migración de Joomla! 1.5</a>.
|
||||
LOADSQLINSTRUCTIONS6=El sistema para subir datos soporta archivos sql no comprimidos, comprimidos con zip y gz. Los archivos comprimidos deben contener un solo script.
|
||||
LOADSQLINSTRUCTIONS7=<strong>3. Instalación limpia</strong>Si no desea instalar datos de ejemplo, migrar datos de un sitio anterior o subir datos desde una copia de seguridad, puede hacer una instalación limpia. Luego de escribir el nombre del sitio, el correo electrónico y la clave del administrador, puede pasar a la etapa de <strong>finalización</strong> haciendo clic en <em>Siguiente>/em>.
|
||||
MAGIC QUOTES RUNTIME=Comillas mágicas en tiempo de ejecución (magic_quotes_runtime)
|
||||
MAIN CONFIGURATION=Configuración principal
|
||||
MAXIMUM UPLOAD SIZE=Tamaño máximo de subida
|
||||
MB LANGUAGE IS DEFAULT=El idioma predeterminado es multibyte (MB)
|
||||
MB STRING OVERLOAD OFF=Variable de sobrecarga para funciones de cadenas multibyte desactivada
|
||||
MIGRATION COMPLETED=Migración completa
|
||||
MIGRATION FAILED=Fallo en la migración
|
||||
MIGRATION LOAD SCRIPT=Carga del script de migración
|
||||
MIGRATION OUTPUT=Salida de la migración
|
||||
MIGRATION SCRIPT=Script de migración
|
||||
MIGRATION SUCCESSFUL=Migración completa, debe hacer clic en <em>Siguiente</em> para continuar.
|
||||
MIGRATETITLE=Cargar un script de migración
|
||||
MYSQL SUPPORT=Soporte MySQL
|
||||
MYSQLPREFIXINVALIDCHARS=El prefijo de tabla MySQL debe comenzar con una letra, y debe contener sólo letras, números o guión bajo.
|
||||
MYSQLDBNAMEINVALIDCHARS=El nombre de la base de datos MySQL debe comenzar con una letra, y debe contener sólo letras, números o guión bajo.
|
||||
MYSQLPREFIXTOOLONG=El prefijo de tabla MySQL contener un máximo de 15 caracteres.
|
||||
MYSQLDBNAMETOOLONG=El nombre de la base de datos MySQL debe tener un máximo de 64 caractéres.
|
||||
NEEDTOUPLOADFILE=O, debe subir el archivo al servidor.
|
||||
NEXT=Siguiente
|
||||
NO=No
|
||||
NOCONNECT=No se puede conectar con el servidor FTP.
|
||||
NOCHMODDIRS=No aplicar CHMOD a directorios (usar la configuración predeterminada del servidor).
|
||||
NOCHMODFILES=No aplicar CHMOD a archivos (usar la configuración predeterminada del servidor).
|
||||
NODELE=La función "DELE" ha fallado.
|
||||
NODIRECTORYLISTING=No es posible obtener un listado del directorio del servidor FTP.
|
||||
NOJAVASCRIPTWARNING=Aparentemente JavaScript está desactivado en su navegador. Debe activar JavaScript antes de continuar.
|
||||
NOLOGIN=No es posible iniciar sesión en el servidor FTP.
|
||||
NOLIST=La función "LIST" ha fallado.
|
||||
NOMKD=La función "MKD" ha fallado.
|
||||
NONLST=La función "NLST" ha fallado.
|
||||
NONNUMERICOFFSET=NO ESPERADO: Valores no numéricos para inicio (start) y foffset
|
||||
NOPWD=La función "PWD" ha fallado.
|
||||
NORETR=La función "RETR" ha fallado.
|
||||
NORMD=La función "RMD" ha fallado.
|
||||
NOROOT=No se puede acceder al directorio FTP especificado.
|
||||
NOSTOR=La función "STOR" ha fallado.
|
||||
NOSYST=La función "SYST" ha fallado.
|
||||
NO FILE SELECTED=No ha seleccionado un archivo.
|
||||
NOTICEYOUCANSTILLINSTALL=Puede continuar con la instalación de todos modos ya que la configuración se mostrará al final, simplemente deberá copiar y pegar la configuración y subirla al sitio.
|
||||
NOTICEMBLANGNOTDEFAULT=El idioma para cadena multibyte en PHP no está configurado como neutral. Esto puede configurarse localmente añadiendo <strong>php_value mbstring.language neutra</strong>" al archivo <code>.htaccess</code>.
|
||||
NOTICEMBSTRINGOVERLOAD=La sobrecarga de funciones para cadenas multibyte está activada en PHP. Esto puede desactivarse localmente agregando <strong>php_value mbstring.func_overload 0</strong> en el archivo <code>.htaccess</code>.
|
||||
OFF=Desactivado
|
||||
OLD SITE ENCODING=Codificación del sitio anterior
|
||||
OLD TABLE PREFIX=Prefijo de las tablas existentes
|
||||
ON=Activado
|
||||
OUTPUT BUFFERING=Buffer de salida (output_buffering)
|
||||
PAGE_TITLE=Instalador Web de Joomla!
|
||||
PASSWORD=Contraseña
|
||||
PHP VERSION=Versión de PHP
|
||||
PICKYOURCHOICEOFLANGS=Escoja el idioma que desea utilizar durante la instalación.
|
||||
POINTEREOF=NO ESPERADO: No es posible ubicar el indicador de archivos más allá del final del archivo.
|
||||
PRE-INSTALLATION CHECK=Comprobación previa
|
||||
PRETITLE=Comprobación previa para
|
||||
PREVIOUS=Anterior
|
||||
QUERY=Consulta
|
||||
READ=leer
|
||||
RECOMMENDED=Recomendado
|
||||
RECOMMENDED SETTINGS=Valores recomendados
|
||||
REGISTER GLOBALS=Registrar globales (register_globals)
|
||||
REQUIRED SETTINGS=Valores requeridos
|
||||
REMOVEINSTALLATION=Para continuar debe eliminar completamente el directorio de instalación.<br />Por motivos de seguridad, no podrá avanzar más allá de esta pantalla hasta que el directorio "installation" sea removido completamente. Esta es una característica de seguridad de Joomla!.
|
||||
SAFE MODE=Modo seguro (safe_mode)
|
||||
SAMPLE DATA INSTALLED SUCCESSFULLY=Datos de ejemplo instalados.
|
||||
SAVE FTP PASSWORD=Guardar la contraseña FTP
|
||||
SCRIPT OPERATIONS FAILED=El procesamiento del script falló.
|
||||
SEARCH=Buscar
|
||||
SELECT LANGUAGE=Seleccione un idioma
|
||||
SELECT TYPE=Seleccione el tipo
|
||||
SESSION AUTO START=Inicio automático de sesión (session.auto_start)
|
||||
SESSION PATH SET=Ruta de sesión configurada
|
||||
SESSION PATH WRITABLE=La ruta de sesión es escribible
|
||||
SITE=Portada
|
||||
SITE MIGRATION=Migración de sitio web
|
||||
SITE NAME=Nombre del sitio web
|
||||
SITE PATH=Ruta del sitio web
|
||||
SITE URL=URL del sitio web
|
||||
SOME PATHS MAY BE UNWRITABLE=<strong>ADVERTENCIA: ¡Algunas de las rutas no tienen permisos de escritura!</strong>
|
||||
SQL SCRIPT INSTALLED SUCCESSFULLY=Script SQL instalado correctamente.
|
||||
START IMPORT=Comenzar importacion
|
||||
STDERRORMSG=El sitio no está disponible temporalmente <br /> Por favor, notifique al Administrador.
|
||||
STDMETADESC=Joomla! - el motor de portales dinámicos y sistema de administración de contenidos
|
||||
STDMETAKEYS=joomla, Joomla
|
||||
STDOFFLINEMSG=El sitio está desactivado por tareas de mantenimiento <br /> Por favor, vuelva más tarde.
|
||||
STEPS=Pasos
|
||||
STOPPEDONERROR=Detenido en un error
|
||||
STOPPEDATLINE=Detenido en la llinea
|
||||
TABLE PREFIX=Prefijo de las tablas
|
||||
TIPBACKUP=Las tablas existentes en la base de datos, de instalaciones anteriores de Joomla!, serán reemplazadas.
|
||||
TIPCOLLATIONNONUTF=<p>Esta versión de MySQL no tiene soporte para UTF-8 que es la codificación requerida</p><p>Se recomienda actualizar la base de datos a una versión posterior a la 4.1.2. Si esto no es posible, Joomla! guardará contenido codificado en UTF-8 en su actual base de datos en modo de compatibilidad con versiones anteriores. La selección de la colación no es posible en este modo por lo se utilizará la colación predeterminada.</p>
|
||||
TIPCOLLATIONUTF=<p>Esta versión de MySQL incluye soporte para UTF-8 que es la codificación requerida.</p><p>Elija una colación de la lista. Si no aparece ninguna para tu idioma, esto es porque la colación predeterminada <em>utf8_general_ci</em> es adecuada.</p>
|
||||
TIPCONFSTEPS=<br />Escriba el correo electrónico para el Super Administrador del sitio<br />Escriba la contraseña y la confirmación de la contraseña que usará el Super Administrador. Con esta contraseña y el usuario <strong>admin</strong> podrá ingresar al área de administración una vez finalizada la instalación. Si está migrando contenido o recuperando una copia de seguridad puede ignorar esta sección ya que los datos de los usuarios serán migrados automáticamente.
|
||||
TIPDATABASE=Algunos hosts permiten solo una base de datos por cuenta. Si debe instalar más de un sitio Joomla! con una misma base de datos, puede modificar la opción de prefijo de tabla en la sección <strong>Parámetros avanzados</strong> para cada sitio instalado.
|
||||
TIPDATABASESTEPS=<p>Configurar Joomla para que funcione en su servidor requiere de cuatro pasos sencillos...</p>\n<p>Configuración básica</p> <p>1. Seleccionar el tipo de base de datos que utilizará en la lista desplegable (generalmente <strong>mysql</strong>) <p>2. Escribir el nombre del servidor en el que se instalará Joomla.</p>\n <p>3. Escribir el nombre de usuario de MySQL, la contraseña y el nombre de la base de datos que utilizará para Joomla!. Éstos deben estar previamente configurados en su servidor</p>\n<p>4. Configuración avanzada</p> <p>Si la base de datos contiene tablas de instalaciones anteriores de Joomla!, deberá indicar cómo proceder. Eliminarlas o hacer una copia de seguridad.</p>\n <p>Escribir un prefijo con el que comenzarán los nombres de todas las tablas de esta instalación de Joomla.</p>
|
||||
TIPFTPCONFSTEPS=<p>Debido a posibles restricciones en los permisos en el sistema de archivos y a las restricciones de modo seguro (Safe Mode) de PHP en algunos servidores,\n para que todos los usuarios puedan utilizar los instaladores de Joomla existe una capa FTP que gestiona las operaciones con los archivos.<br/>Escriba el nombre de usuario FTP y la contraseña correspondiente, con acceso al directorio raíz de su sitio web Joomla!; ésta será la cuenta FTP que gestionará las operaciones en el sistema de archivos cuando Joomla! requiera un acceso FTP para completar una tarea.<br/>Por razones de seguridad, es mejor utilizar una cuenta de usuario FTP diferente de la cuenta principal, con acceso únicamente a la instalación de Joomla!.</p>
|
||||
TIPHOST=Normalmente <strong>localhost</strong> o un nombre de host provisto por su proveedor.
|
||||
TIPINSTALLDEFAULT=Especialmente recomendado para principiantes. Instalará el contenido de ejemplo incluido en el paquete de instalación en español.
|
||||
TIPLOADMIGRATION=El script de migración debe crearse en el sitio anterior utilizando el componente <code>com_migrator</code>. Indique el prefijo de las tablas y la codificación del sitio anterior (puede encontrar esta información revisando la variable _ISO en el archivo de idioma - <i>Ej.: spanish.php</i>- o puede verse en su navegador Ej.: En Firefox menú "Herramientas" --> "Información de la página" ítem: "Codificación" o menú "Ver" --> "Codificación").
|
||||
TIPUPLOADED=Ya se ha subido un script de migración al servidor (ej.: vía FTP/SCP)
|
||||
TIPMIGRATION=Es un script para migrar desde Joomla! 1.0
|
||||
TIPLOADSQL=El script SQL debe estar codificado en UTF-8 y utilizar el prefijo apropiado para las tablas.
|
||||
TIPPASSWORD=Por razones de seguridad el uso de una contraseña para la cuenta de la base de datos MySQL es altamente recomendado. Esta es la contraseña para acceder a su base de datos. Es posible que esta información sea predeterminada por su proveedor.
|
||||
TIPPREFIX=No puede utilizarse "bak_" ya que se usa para la copia de seguridad de las tablas.
|
||||
TIPPREINSTALL=Si alguno de estos elementos está marcado\nen rojo, debe corregirse. De no hacerlo,\n la instalación de Joomla! no funcionará\ncorrectamente.
|
||||
TIPRECOMSETTINGS=Éstos son los valores de PHP recomendados para asegurar una completa compatibilidad com Joomla! No obstante, Joomla! funcionará incluso si estos valores no coinciden con los recomendados.
|
||||
TIPTYPE=Normalmente será <strong>MySQL</strong>.
|
||||
TIPUSER=Puede ser algo como <strong>root</strong> o un nombre de usuario, para la base de datos, asignado por su proveedor.
|
||||
TIPXML=Utilice esto para probar la instalación de otras plataformas de bases de datos.
|
||||
TOOMANYLINES=Hasta este punto el script contiene más de %s líneas para volcar. Esto es debido a un ítem de contenido largo o, tal vez, un tema de un foro.
|
||||
UNABLE TO AUTODETECT THE FTP ROOT FOLDER=No es posible autodetectar la raíz de la carpeta FTP.
|
||||
UNABLETOSETOFFSET=NO ESPERADO: No es posible ubicar el indicador en offset:
|
||||
UNWRITABLE=No escribible
|
||||
UPLOAD AND EXECUTE=Subir y ejecutar
|
||||
UPLOADFILESIZE=El tamaño máximo de subida de tu servidor es %s
|
||||
USER=Usuario
|
||||
USER NAME=Nombre de usuario
|
||||
USERNAME=Nombre de usuario
|
||||
VALIDDBDETAILS=La información suministrada sobre la base de datos es incompleta o incorrecta.
|
||||
VALIDCOLLATION=No se ha seleccionado una colación. Para continuar con la colación predeterminada haga clic en "Aceptar". Para volver atrás seleccione "Cancelar".
|
||||
VALIDHOST=Debe escribir el nombre del host.
|
||||
VALIDNAME=Ingrese le nombre de la base de datos
|
||||
VALIDTYPE=Seleccione el tipo de base de datos.
|
||||
VALIDFTPHOST=Debe escribir el nombre del servidor FTP o revisar que sea correcto.
|
||||
VALIDFTPUSER=Debe escribir el nombre de usuario FTP o revisar que sea correcto.
|
||||
VALIDFTPPASS=Debe escribir la contraseña del usuario FTP o revisar que sea correcta.
|
||||
VALIDPREFIX=Debe escribir un prefijo para la tablas MySQL para que Joomla! funcione correctamente.
|
||||
VALIDFTP=La configuración de FTP es correcta.
|
||||
VALIDUSER=Debe ingresar un nombre de usuario válido para la base de datos.
|
||||
VERIFY FTP SETTINGS=Comprobar la configuración FTP
|
||||
VERSION#=Versión 1.5
|
||||
WARNADMINPASSWORD=Debe ingresar una contraseña válida para el administrador.
|
||||
WARNADMINPASSWORDDOESNTMATCH=La contraseña del administrador y la confirmación no son idénticas.
|
||||
WARNBACKINGUPDB=Ocurrieron algunos errores al hacer la copia de seguridad de la base de datos.
|
||||
WARNCOOKIESNOTENABLED=Aparentemente las cookies no están activadas en su navegador. No podrá instalar la aplicación con esta característica desactivada.
|
||||
WARNCREATEDB=Ha ocurrido en error al intentar crear la base de datos %s.
|
||||
WARNDELETEDB=Ocurrieron algunos errores al borrar la base de datos.
|
||||
WARNEMAILADDRESS=Debe ingresar una dirección de correo electrónico válida.
|
||||
WARNFTPENABLE=Deshabilitar FTP puede causar problemas al instalar complementos para Joomla!
|
||||
WARNICONV=La extensión PHP iconv, necesaria para migrar contenido, no está cargada.
|
||||
WARNINSTALLFILE=Fallo al subir el archivo: No está habilitada la subida de archivos en PHP.
|
||||
WARNINSTALLZLIB=Fallo al subir el archivo: la extensión de PHP zlib no está cargada.
|
||||
WARNNOFILE=Fallo al subir: el archivo subido no fue encontrado.
|
||||
WARNUNPACK=Fallo al subir: error al descomprimir el archivo.
|
||||
WARNNODATA=No se instalaron datos de ejemplo u otro tipo de datos. Haga clic en "Aceptar" para continuar o en "Cancelar" para repetir este paso.
|
||||
WARNNOTCONNECTDB=No es posible conectar con la base de datos. El mensaje de error devuelto es: %s
|
||||
WARNSITENAME=Ingrese un nombre para el sitio web.
|
||||
WARNPOPULATINGDB=Ocurrieron algunos errores al volcar los datos a la base de datos
|
||||
WARNUPLOADFAILURE=¡Fallo en la subida! Verifique que los directorios "temp" y "/sql/migration" tienen permisos de escritura.
|
||||
WRITE=Escribir
|
||||
WORLD=Mundo
|
||||
WRITABLE=Escribible
|
||||
XML SUPPORT=Soporte para XML
|
||||
YES=Sí
|
||||
YOUR E-MAIL=Correo electrónico
|
||||
ZLIB COMPRESSION SUPPORT=Soporte para compresión zllib
|
||||
21
www/-installation-/language/es-ES/es-ES.xml
Normal file
@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<metafile version="1.5" client="installation" >
|
||||
<name>Spanish (Español internacional)</name>
|
||||
<version>1.5.4</version>
|
||||
<creationDate>Jun 2008</creationDate>
|
||||
<author>TodosJuntos.org Comunidad Hispana de Joomla!</author>
|
||||
<authorEmail>traduccion@todosjuntos.org</authorEmail>
|
||||
<authorUrl>www.todosjuntos.org</authorUrl>
|
||||
<copyright>Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.</copyright>
|
||||
<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
|
||||
<description>Spanish language file for web installer</description>
|
||||
<metadata>
|
||||
<name>Spanish (Español internacional)</name>
|
||||
<tag>es-ES</tag>
|
||||
<rtl>0</rtl>
|
||||
<locale>es_ES.UTF-8, spa_ES.UTF-8, spanish, spanish.UTF-8, spanish_traditional_Sort, Spanish_Modern_Sort,</locale>
|
||||
<winCodePage>iso-8859-1</winCodePage>
|
||||
<backwardLang>spanish</backwardLang>
|
||||
</metadata>
|
||||
<params />
|
||||
</metafile>
|
||||
6
www/-installation-/language/es-ES/index.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<!-- saved from url=(0065)http://downloads.joomlacode.org/frsrelease/1/5/7/15765/index.html -->
|
||||
<HTML><HEAD>
|
||||
<META http-equiv=Content-Type content="text/html; charset=windows-1251">
|
||||
<META content="MSHTML 6.00.5730.11" name=GENERATOR></HEAD>
|
||||
<BODY bgColor=#ffffff></BODY></HTML>
|
||||
7
www/-installation-/localise.xml
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<localise version="1.5" client="installation" >
|
||||
<forceLang></forceLang>
|
||||
<helpurl></helpurl>
|
||||
<debug>0</debug>
|
||||
<params/>
|
||||
</localise>
|
||||
60
www/-installation-/migration.html
Normal file
@ -0,0 +1,60 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<title>Loading</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
|
||||
body {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
background: #fff;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
a:link, a:visited {
|
||||
color: #0B55C4;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #009;
|
||||
}
|
||||
|
||||
p {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
li {
|
||||
font-family: arial, helvetica, sans serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-size: 11px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body> </body>
|
||||
</html>
|
||||
1
www/-installation-/sql/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
1
www/-installation-/sql/migration/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
5
www/-installation-/sql/mysql/diff.sql
Normal file
@ -0,0 +1,5 @@
|
||||
# $Id: diff.sql 9728 2007-12-22 10:26:36Z eddieajau $
|
||||
|
||||
# RC 4 to next version (working file)
|
||||
|
||||
# NO CHANGES
|
||||
30
www/-installation-/sql/mysql/diff_rc1_to_rc2.sql
Normal file
@ -0,0 +1,30 @@
|
||||
# $Id: diff_rc1_to_rc2.sql 9728 2007-12-22 10:26:36Z eddieajau $
|
||||
|
||||
# RC 1 to RC 2
|
||||
|
||||
-- 30-July-2007 --
|
||||
-- Fixes delete user issue
|
||||
|
||||
CREATE TABLE `jos_core_acl_aro_map` (
|
||||
`acl_id` int(11) NOT NULL default '0',
|
||||
`section_value` varchar(230) NOT NULL default '0',
|
||||
`value` varchar(100) NOT NULL,
|
||||
PRIMARY KEY (`acl_id`,`section_value`,`value`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
-- 29-July-2007 --
|
||||
-- Fixes large object in session data
|
||||
|
||||
ALTER TABLE `jos_session`
|
||||
MODIFY COLUMN `data` LONGTEXT;
|
||||
|
||||
# Beta 2 to RC 1
|
||||
|
||||
-- Fixes incompatibility with natice phpgacl schema
|
||||
ALTER TABLE `jos_core_acl_aro_sections`
|
||||
CHANGE COLUMN `section_id` `id` INTEGER NOT NULL AUTO_INCREMENT;
|
||||
|
||||
-- Bogus indexes
|
||||
ALTER TABLE `jos_core_acl_aro_sections`
|
||||
DROP INDEX `value_aro_sections`,
|
||||
DROP INDEX `hidden_aro_sections`;
|
||||
5
www/-installation-/sql/mysql/diff_rc2_to_rc3.sql
Normal file
@ -0,0 +1,5 @@
|
||||
# $Id: diff_rc2_to_rc3.sql 9728 2007-12-22 10:26:36Z eddieajau $
|
||||
|
||||
# RC 2 to RC 3
|
||||
|
||||
# NO CHANGES
|
||||
54
www/-installation-/sql/mysql/diff_rc3_to_rc4.sql
Normal file
@ -0,0 +1,54 @@
|
||||
# $Id: diff_rc3_to_rc4.sql 9728 2007-12-22 10:26:36Z eddieajau $
|
||||
|
||||
# RC 3 to RC 4
|
||||
|
||||
-- 14-Dec-2007
|
||||
-- Change SEF plugin from Content To System
|
||||
|
||||
UPDATE `jos_plugins` SET `ordering` = `ordering` + 1 WHERE `folder` LIKE 'system';
|
||||
|
||||
UPDATE `jos_plugins` SET `name` = 'System - SEF', `folder` = 'system', `ordering` = 1 WHERE element LIKE 'sef';
|
||||
|
||||
-- 26-Oct-2007 --
|
||||
-- Database index optimizations
|
||||
|
||||
ALTER TABLE `jos_categories`
|
||||
DROP INDEX `idx_section`;
|
||||
|
||||
ALTER TABLE `jos_components`
|
||||
ADD INDEX `parent_option` ( `parent` , `option` ( 32 ) );
|
||||
|
||||
ALTER TABLE `jos_contact_details`
|
||||
ADD INDEX `catid` ( `catid` );
|
||||
|
||||
ALTER TABLE `jos_content`
|
||||
ADD INDEX `idx_createdby` ( `created_by` ),
|
||||
DROP INDEX `idx_mask`;
|
||||
|
||||
-- Watch out: This operation already found it's way into the joomla.sql file in RC 1.
|
||||
-- However, that file has not been used by the installer for a long time.
|
||||
-- You should *only* run this query if your jos_core_acl_aro_sections table has duplicate indexes.
|
||||
ALTER TABLE `jos_core_acl_aro_sections`
|
||||
DROP INDEX `value_aro_sections`,
|
||||
DROP INDEX `hidden_aro_sections`;
|
||||
|
||||
ALTER TABLE `jos_messages`
|
||||
ADD INDEX `useridto_state` ( `user_id_to`, `state` );
|
||||
|
||||
ALTER TABLE `jos_newsfeeds`
|
||||
ADD INDEX `catid` ( `catid` );
|
||||
|
||||
ALTER TABLE `jos_session`
|
||||
DROP PRIMARY KEY,
|
||||
ADD PRIMARY KEY (`session_id`(64)),
|
||||
ADD INDEX `userid` ( `userid` ),
|
||||
ADD INDEX `time` ( `time` );
|
||||
|
||||
ALTER TABLE `jos_templates_menu`
|
||||
DROP PRIMARY KEY,
|
||||
ADD PRIMARY KEY ( `menuid`, `client_id`, `template` ( 255 ) );
|
||||
|
||||
ALTER TABLE `jos_users`
|
||||
ADD INDEX `gid_block` (`gid`, `block`),
|
||||
ADD INDEX `username` ( `username` ),
|
||||
ADD INDEX `email` ( `email` );
|
||||
1
www/-installation-/sql/mysql/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
839
www/-installation-/sql/mysql/joomla.sql
Normal file
@ -0,0 +1,839 @@
|
||||
# $Id: joomla.sql 12384 2009-06-28 03:02:34Z ian $
|
||||
# Traducida y ajustada para Joomla! 1.5 Spanish www.joomlaspanish.org 28-06-2009
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__banner`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__banner` (
|
||||
`bid` int(11) NOT NULL auto_increment,
|
||||
`cid` int(11) NOT NULL default '0',
|
||||
`type` varchar(30) NOT NULL default 'banner',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`imptotal` int(11) NOT NULL default '0',
|
||||
`impmade` int(11) NOT NULL default '0',
|
||||
`clicks` int(11) NOT NULL default '0',
|
||||
`imageurl` varchar(100) NOT NULL default '',
|
||||
`clickurl` varchar(200) NOT NULL default '',
|
||||
`date` datetime default NULL,
|
||||
`showBanner` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` tinyint(1) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`editor` varchar(50) default NULL,
|
||||
`custombannercode` text,
|
||||
`catid` INTEGER UNSIGNED NOT NULL DEFAULT 0,
|
||||
`description` TEXT NOT NULL DEFAULT '',
|
||||
`sticky` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
|
||||
`ordering` INTEGER NOT NULL DEFAULT 0,
|
||||
`publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`tags` TEXT NOT NULL DEFAULT '',
|
||||
`params` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`bid`),
|
||||
KEY `viewbanner` (`showBanner`),
|
||||
INDEX `idx_banner_catid`(`catid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__bannerclient`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__bannerclient` (
|
||||
`cid` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`contact` varchar(255) NOT NULL default '',
|
||||
`email` varchar(255) NOT NULL default '',
|
||||
`extrainfo` text NOT NULL,
|
||||
`checked_out` tinyint(1) NOT NULL default '0',
|
||||
`checked_out_time` time default NULL,
|
||||
`editor` varchar(50) default NULL,
|
||||
PRIMARY KEY (`cid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__bannertrack`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__bannertrack` (
|
||||
`track_date` date NOT NULL,
|
||||
`track_type` int(10) unsigned NOT NULL,
|
||||
`banner_id` int(10) unsigned NOT NULL
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__categories`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__categories` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`parent_id` int(11) NOT NULL default 0,
|
||||
`title` varchar(255) NOT NULL default '',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`image` varchar(255) NOT NULL default '',
|
||||
`section` varchar(50) NOT NULL default '',
|
||||
`image_position` varchar(30) NOT NULL default '',
|
||||
`description` text NOT NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`editor` varchar(50) default NULL,
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`count` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `cat_idx` (`section`,`published`,`access`),
|
||||
KEY `idx_access` (`access`),
|
||||
KEY `idx_checkout` (`checked_out`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__components`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__components` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(50) NOT NULL default '',
|
||||
`link` varchar(255) NOT NULL default '',
|
||||
`menuid` int(11) unsigned NOT NULL default '0',
|
||||
`parent` int(11) unsigned NOT NULL default '0',
|
||||
`admin_menu_link` varchar(255) NOT NULL default '',
|
||||
`admin_menu_alt` varchar(255) NOT NULL default '',
|
||||
`option` varchar(50) NOT NULL default '',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`admin_menu_img` varchar(255) NOT NULL default '',
|
||||
`iscore` tinyint(4) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
`enabled` tinyint(4) NOT NULL default '1',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `parent_option` (`parent`, `option`(32))
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__components`
|
||||
#
|
||||
|
||||
INSERT INTO `#__components` VALUES (1, 'Banners', '', 0, 0, '', 'Banner Management', 'com_banners', 0, 'js/ThemeOffice/component.png', 0, 'track_impressions=0\ntrack_clicks=0\ntag_prefix=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (2, 'Banners', '', 0, 1, 'option=com_banners', 'Active Banners', 'com_banners', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (3, 'Clientes', '', 0, 1, 'option=com_banners&c=client', 'Manage Clients', 'com_banners', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (4, 'Enlaces Web', 'option=com_weblinks', 0, 0, '', 'Manage Weblinks', 'com_weblinks', 0, 'js/ThemeOffice/component.png', 0, 'show_comp_description=1\ncomp_description=\nshow_link_hits=1\nshow_link_description=1\nshow_other_cats=1\nshow_headings=1\nshow_page_title=1\nlink_target=0\nlink_icons=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (5, 'Enlaces', '', 0, 4, 'option=com_weblinks', 'View existing weblinks', 'com_weblinks', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (6, 'Categorías', '', 0, 4, 'option=com_categories§ion=com_weblinks', 'Manage weblink categories', '', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (7, 'Contactos', 'option=com_contact', 0, 0, '', 'Edit contact details', 'com_contact', 0, 'js/ThemeOffice/component.png', 1, 'contact_icons=0\nicon_address=\nicon_email=\nicon_telephone=\nicon_fax=\nicon_misc=\nshow_headings=1\nshow_position=1\nshow_email=0\nshow_telephone=1\nshow_mobile=1\nshow_fax=1\nbannedEmail=\nbannedSubject=\nbannedText=\nsession=1\ncustomReply=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (8, 'Contactos', '', 0, 7, 'option=com_contact', 'Edit contact details', 'com_contact', 0, 'js/ThemeOffice/edit.png', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (9, 'Categorías', '', 0, 7, 'option=com_categories§ion=com_contact_details', 'Manage contact categories', '', 2, 'js/ThemeOffice/categories.png', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (10, 'Encuesta', 'option=com_poll', 0, 0, 'option=com_poll', 'Manage Polls', 'com_poll', 0, 'js/ThemeOffice/component.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (11, 'News Feeds', 'option=com_newsfeeds', 0, 0, '', 'News Feeds Management', 'com_newsfeeds', 0, 'js/ThemeOffice/component.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (12, 'Feeds', '', 0, 11, 'option=com_newsfeeds', 'Manage News Feeds', 'com_newsfeeds', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (13, 'Categorías', '', 0, 11, 'option=com_categories§ion=com_newsfeeds', 'Manage Categories', '', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (14, 'Usuario', 'option=com_user', 0, 0, '', '', 'com_user', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (15, 'Buscar', 'option=com_search', 0, 0, 'option=com_search', 'Search Statistics', 'com_search', 0, 'js/ThemeOffice/component.png', 1, 'enabled=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (16, 'Categorías', '', 0, 1, 'option=com_categories§ion=com_banner', 'Categories', '', 3, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (17, 'Wrapper', 'option=com_wrapper', 0, 0, '', 'Wrapper', 'com_wrapper', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (18, 'Mail para', '', 0, 0, '', '', 'com_mailto', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (19, 'Administrador Media', '', 0, 0, 'option=com_media', 'Media Manager', 'com_media', 0, '', 1, 'upload_extensions=bmp,csv,doc,epg,gif,ico,jpg,odg,odp,ods,odt,pdf,png,ppt,swf,txt,xcf,xls,BMP,CSV,DOC,EPG,GIF,ICO,JPG,ODG,ODP,ODS,ODT,PDF,PNG,PPT,SWF,TXT,XCF,XLS\nupload_maxsize=10000000\nfile_path=images\nimage_path=images/stories\nrestrict_uploads=1\ncheck_mime=1\nimage_extensions=bmp,gif,jpg,png\nignore_extensions=\nupload_mime=image/jpeg,image/gif,image/png,image/bmp,application/x-shockwave-flash,application/msword,application/excel,application/pdf,application/powerpoint,text/plain,application/x-zip\nupload_mime_illegal=text/html', 1);
|
||||
INSERT INTO `#__components` VALUES (20, 'Artículos', 'option=com_content', 0, 0, '', '', 'com_content', 0, '', 1, 'show_noauth=0\nshow_title=1\nlink_titles=0\nshow_intro=1\nshow_section=0\nlink_section=0\nshow_category=0\nlink_category=0\nshow_author=1\nshow_create_date=1\nshow_modify_date=1\nshow_item_navigation=0\nshow_readmore=1\nshow_vote=0\nshow_icons=1\nshow_pdf_icon=1\nshow_print_icon=1\nshow_email_icon=1\nshow_hits=1\nfeed_summary=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (21, 'Administrar Configuración', '', 0, 0, '', 'Configuration', 'com_config', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (22, 'Administrar Instalaciones', '', 0, 0, '', 'Installer', 'com_installer', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (23, 'Gestor de idiomas', '', 0, 0, '', 'Idiomas', 'com_languages', 0, '', 1, 'site=es-ES\nadministrator=es-ES\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (24, 'Mail masivo', '', 0, 0, '', 'Mass Mail', 'com_massmail', 0, '', 1, 'mailSubjectPrefix=\nmailBodySuffix=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (25, 'Menú del editor', '', 0, 0, '', 'Menu Editor', 'com_menus', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (27, 'Mensajes', '', 0, 0, '', 'Messages', 'com_messages', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (28, 'Administrar modulos', '', 0, 0, '', 'Modules', 'com_modules', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (29, 'Administrar Plugin', '', 0, 0, '', 'Plugins', 'com_plugins', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (30, 'Administrar plantilla', '', 0, 0, '', 'Templates', 'com_templates', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (31, 'Administrar usuarios', '', 0, 0, '', 'Users', 'com_users', 0, '', 1, 'allowUserRegistration=1\nnew_usertype=Registered\nuseractivation=1\nfrontend_userparams=1\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (32, 'Administrar la caché', '', 0, 0, '', 'Cache', 'com_cache', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (33, 'Panel de Control', '', 0, 0, '', 'Control Panel', 'com_cpanel', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES(34, 'Administrador de Traducciones', 'option=com_translationsmanager', 0, 0, 'option=com_translationsmanager', 'Administrador de Traducciones', 'com_translationsmanager', 0, 'class:language', 0, '', 1);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__contact_details`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__contact_details` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`con_position` varchar(255) default NULL,
|
||||
`address` text,
|
||||
`suburb` varchar(100) default NULL,
|
||||
`state` varchar(100) default NULL,
|
||||
`country` varchar(100) default NULL,
|
||||
`postcode` varchar(100) default NULL,
|
||||
`telephone` varchar(255) default NULL,
|
||||
`fax` varchar(255) default NULL,
|
||||
`misc` mediumtext,
|
||||
`image` varchar(255) default NULL,
|
||||
`imagepos` varchar(20) default NULL,
|
||||
`email_to` varchar(255) default NULL,
|
||||
`default_con` tinyint(1) unsigned NOT NULL default '0',
|
||||
`published` tinyint(1) unsigned NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
`user_id` int(11) NOT NULL default '0',
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`mobile` varchar(255) NOT NULL default '',
|
||||
`webpage` varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `catid` (`catid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`title` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`title_alias` varchar(255) NOT NULL default '',
|
||||
`introtext` mediumtext NOT NULL,
|
||||
`fulltext` mediumtext NOT NULL,
|
||||
`state` tinyint(3) NOT NULL default '0',
|
||||
`sectionid` int(11) unsigned NOT NULL default '0',
|
||||
`mask` int(11) unsigned NOT NULL default '0',
|
||||
`catid` int(11) unsigned NOT NULL default '0',
|
||||
`created` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`created_by` int(11) unsigned NOT NULL default '0',
|
||||
`created_by_alias` varchar(255) NOT NULL default '',
|
||||
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`modified_by` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`images` text NOT NULL,
|
||||
`urls` text NOT NULL,
|
||||
`attribs` text NOT NULL,
|
||||
`version` int(11) unsigned NOT NULL default '1',
|
||||
`parentid` int(11) unsigned NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`metakey` text NOT NULL,
|
||||
`metadesc` text NOT NULL,
|
||||
`access` int(11) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '0',
|
||||
`metadata` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_section` (`sectionid`),
|
||||
KEY `idx_access` (`access`),
|
||||
KEY `idx_checkout` (`checked_out`),
|
||||
KEY `idx_state` (`state`),
|
||||
KEY `idx_catid` (`catid`),
|
||||
KEY `idx_createdby` (`created_by`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content_frontpage`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content_frontpage` (
|
||||
`content_id` int(11) NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`content_id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content_rating`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content_rating` (
|
||||
`content_id` int(11) NOT NULL default '0',
|
||||
`rating_sum` int(11) unsigned NOT NULL default '0',
|
||||
`rating_count` int(11) unsigned NOT NULL default '0',
|
||||
`lastip` varchar(50) NOT NULL default '',
|
||||
PRIMARY KEY (`content_id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
# Table structure for table `#__core_log_items`
|
||||
|
||||
CREATE TABLE `#__core_log_items` (
|
||||
`time_stamp` date NOT NULL default '0000-00-00',
|
||||
`item_table` varchar(50) NOT NULL default '',
|
||||
`item_id` int(11) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '0'
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
# Table structure for table `#__core_log_searches`
|
||||
|
||||
CREATE TABLE `#__core_log_searches` (
|
||||
`search_term` varchar(128) NOT NULL default '',
|
||||
`hits` int(11) unsigned NOT NULL default '0'
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
#
|
||||
# Table structure for table `#__groups`
|
||||
#
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
CREATE TABLE `#__groups` (
|
||||
`id` tinyint(3) unsigned NOT NULL default '0',
|
||||
`name` varchar(50) NOT NULL default '',
|
||||
PRIMARY KEY (`id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__groups`
|
||||
#
|
||||
|
||||
INSERT INTO `#__groups` VALUES (0, 'Public');
|
||||
INSERT INTO `#__groups` VALUES (1, 'Registered');
|
||||
INSERT INTO `#__groups` VALUES (2, 'Special');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__plugins`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__plugins` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(100) NOT NULL default '',
|
||||
`element` varchar(100) NOT NULL default '',
|
||||
`folder` varchar(100) NOT NULL default '',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`published` tinyint(3) NOT NULL default '0',
|
||||
`iscore` tinyint(3) NOT NULL default '0',
|
||||
`client_id` tinyint(3) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_folder` (`published`,`client_id`,`access`,`folder`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
INSERT INTO `#__plugins` VALUES (1, 'Autenticación - Joomla', 'joomla', 'authentication', 0, 1, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (2, 'Autenticación - LDAP', 'ldap', 'authentication', 0, 2, 0, 1, 0, 0, '0000-00-00 00:00:00', 'host=\nport=389\nuse_ldapV3=0\nnegotiate_tls=0\nno_referrals=0\nauth_method=bind\nbase_dn=\nsearch_string=\nusers_dn=\nusername=\npassword=\nldap_fullname=fullName\nldap_email=mail\nldap_uid=uid\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (3, 'Autenticación - GMail', 'gmail', 'authentication', 0, 4, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (4, 'Autenticación - OpenID', 'openid', 'authentication', 0, 3, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (5, 'Usuario - Joomla!', 'joomla', 'user', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', 'autoregister=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (6, 'Buscar - Contenido','content','search',0,1,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\nsearch_content=1\nsearch_uncategorised=1\nsearch_archived=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (7, 'Buscar - Contactos','contacts','search',0,3,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (8, 'Buscar - Categorías', 'categories', 'search', 0, 4, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (9, 'Buscar - Secciones', 'sections', 'search', 0, 5, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (10, 'Buscar - Newsfeeds', 'newsfeeds', 'search', 0, 6, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (11, 'Buscar - Weblinks','weblinks','search',0,2,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (12, 'Contenido - Pagebreak','pagebreak','content',0,10000,1,1,0,0,'0000-00-00 00:00:00','enabled=1\ntitle=1\nmultipage_toc=1\nshowall=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (13, 'Contenido - Votar','vote','content',0,4,1,1,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (14, 'Contenido - Email Cloaking', 'emailcloak', 'content', 0, 5, 1, 0, 0, 0, '0000-00-00 00:00:00', 'mode=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (15, 'Contenido - Code Hightlighter (GeSHi)', 'geshi', 'content', 0, 5, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (16, 'Contenido - Cargar módulo', 'loadmodule', 'content', 0, 6, 1, 0, 0, 0, '0000-00-00 00:00:00', 'enabled=1\nstyle=0\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (17, 'Contenido - Page Navigation','pagenavigation','content',0,2,1,1,0,0,'0000-00-00 00:00:00','position=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (18, 'Editor - No Editor','none','editors',0,0,1,1,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (19, 'Editor - TinyMCE', 'tinymce', 'editors', 0, 0, 1, 1, 0, 0, '0000-00-00 00:00:00', 'theme=advanced\ncleanup=1\ncleanup_startup=0\nautosave=0\ncompressed=0\nrelative_urls=1\ntext_direction=ltr\nlang_mode=0\nlang_code=es\ninvalid_elements=applet\ncontent_css=1\ncontent_css_custom=\nnewlines=0\ntoolbar=top\nhr=1\nsmilies=1\ntable=1\nstyle=1\nlayer=1\nxhtmlxtras=0\ntemplate=0\ndirectionality=1\nfullscreen=1\nhtml_height=550\nhtml_width=750\npreview=1\ninsertdate=1\nformat_date=%Y-%m-%d\ninserttime=1\nformat_time=%H:%M:%S\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (20, 'Editor - XStandard Lite 2.0', 'xstandard', 'editors', 0, 0, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (21, 'Editor Botón - Imagen','image','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (22, 'Editor Botón - Pagebreak','pagebreak','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (23, 'Editor Botón - Leer más','readmore','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (24, 'XML-RPC - Joomla', 'joomla', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (25, 'XML-RPC - Blogger API', 'blogger', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', 'catid=1\nsectionid=0\n\n');
|
||||
#INSERT INTO `#__plugins` VALUES (26, 'XML-RPC - MetaWeblog API', 'metaweblog', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (27, 'Sistema - SEF','sef','system',0,1,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (28, 'Sistema - Debug', 'debug', 'system', 0, 2, 1, 0, 0, 0, '0000-00-00 00:00:00', 'queries=1\nmemory=1\nlangauge=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (29, 'Sistema - Legado', 'legacy', 'system', 0, 3, 0, 1, 0, 0, '0000-00-00 00:00:00', 'route=0\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (30, 'Sistema - Cache', 'cache', 'system', 0, 4, 0, 1, 0, 0, '0000-00-00 00:00:00', 'browsercache=0\ncachetime=15\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (31, 'Sistema - Log', 'log', 'system', 0, 5, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (32, 'Sistema - Recordarme', 'remember', 'system', 0, 6, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (33, 'Sistema - Backlink', 'backlink', 'system', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__menu` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`menutype` varchar(75) default NULL,
|
||||
`name` varchar(255) default NULL,
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`link` text,
|
||||
`type` varchar(50) NOT NULL default '',
|
||||
`published` tinyint(1) NOT NULL default 0,
|
||||
`parent` int(11) unsigned NOT NULL default 0,
|
||||
`componentid` int(11) unsigned NOT NULL default 0,
|
||||
`sublevel` int(11) default 0,
|
||||
`ordering` int(11) default 0,
|
||||
`checked_out` int(11) unsigned NOT NULL default 0,
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`pollid` int(11) NOT NULL default 0,
|
||||
`browserNav` tinyint(4) default 0,
|
||||
`access` tinyint(3) unsigned NOT NULL default 0,
|
||||
`utaccess` tinyint(3) unsigned NOT NULL default 0,
|
||||
`params` text NOT NULL,
|
||||
`lft` int(11) unsigned NOT NULL default 0,
|
||||
`rgt` int(11) unsigned NOT NULL default 0,
|
||||
`home` INTEGER(1) UNSIGNED NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `componentid` (`componentid`,`menutype`,`published`,`access`),
|
||||
KEY `menutype` (`menutype`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
INSERT INTO `#__menu` VALUES (1, 'mainmenu', 'Inicio', 'home', 'index.php?option=com_content&view=frontpage', 'component', 1, 0, 20, 0, 1, 0, '0000-00-00 00:00:00', 0, 0, 0, 3, 'show_page_title=1\npage_title=Bienvenidos a la portada\nshow_description=0\nshow_description_image=0\nnum_leading_articles=1\nnum_intro_articles=4\nnum_columns=2\nnum_links=4\nshow_title=1\npageclass_sfx=\nmenu_image=-1\nsecure=0\norderby_pri=\norderby_sec=front\nshow_pagination=2\nshow_pagination_results=1\nshow_noauth=0\nlink_titles=0\nshow_intro=1\nshow_section=0\nlink_section=0\nshow_category=0\nlink_category=0\nshow_author=1\nshow_create_date=1\nshow_modify_date=1\nshow_item_navigation=0\nshow_readmore=1\nshow_vote=0\nshow_icons=1\nshow_pdf_icon=1\nshow_print_icon=1\nshow_email_icon=1\nshow_hits=1\n\n', 0, 0, 1);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__menu_types`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__menu_types` (
|
||||
`id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`menutype` VARCHAR(75) NOT NULL DEFAULT '',
|
||||
`title` VARCHAR(255) NOT NULL DEFAULT '',
|
||||
`description` VARCHAR(255) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY(`id`),
|
||||
UNIQUE `menutype`(`menutype`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
INSERT INTO `#__menu_types` VALUES (1, 'mainmenu', 'Menú principal', 'Este es el menú principal del sitio');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__messages`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__messages` (
|
||||
`message_id` int(10) unsigned NOT NULL auto_increment,
|
||||
`user_id_from` int(10) unsigned NOT NULL default '0',
|
||||
`user_id_to` int(10) unsigned NOT NULL default '0',
|
||||
`folder_id` int(10) unsigned NOT NULL default '0',
|
||||
`date_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`state` int(11) NOT NULL default '0',
|
||||
`priority` int(1) unsigned NOT NULL default '0',
|
||||
`subject` text NOT NULL default '',
|
||||
`message` text NOT NULL,
|
||||
PRIMARY KEY (`message_id`),
|
||||
KEY `useridto_state` (`user_id_to`, `state`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__messages_cfg`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__messages_cfg` (
|
||||
`user_id` int(10) unsigned NOT NULL default '0',
|
||||
`cfg_name` varchar(100) NOT NULL default '',
|
||||
`cfg_value` varchar(255) NOT NULL default '',
|
||||
UNIQUE `idx_user_var_name` (`user_id`,`cfg_name`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__modules`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__modules` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`title` text NOT NULL,
|
||||
`content` text NOT NULL,
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`position` varchar(50) default NULL,
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`module` varchar(50) default NULL,
|
||||
`numnews` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`showtitle` tinyint(3) unsigned NOT NULL default '1',
|
||||
`params` text NOT NULL,
|
||||
`iscore` tinyint(4) NOT NULL default '0',
|
||||
`client_id` tinyint(4) NOT NULL default '0',
|
||||
`control` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `published` (`published`,`access`),
|
||||
KEY `newsfeeds` (`module`,`published`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
INSERT INTO `#__modules` VALUES (1, 'Menú principal', '', 1, 'left', 0, '0000-00-00 00:00:00', 1, 'mod_mainmenu', 0, 0, 1, 'menutype=mainmenu\nmoduleclass_sfx=_menu\n', 1, 0, '');
|
||||
INSERT INTO `#__modules` VALUES (2, 'Acceso', '', 1, 'login', 0, '0000-00-00 00:00:00', 1, 'mod_login', 0, 0, 1, '', 1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (3, 'Popular','',3,'cpanel',0,'0000-00-00 00:00:00',1,'mod_popular',0,2,1,'',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (4, 'Artículos añadidos recientemente','',4,'cpanel',0,'0000-00-00 00:00:00',1,'mod_latest',0,2,1,'ordering=c_dsc\nuser_id=0\ncache=0\n\n',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (5, 'Menú de estadísticas','',5,'cpanel',0,'0000-00-00 00:00:00',1,'mod_stats',0,2,1,'',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (6, 'Los mensajes no leídos','',1,'header',0,'0000-00-00 00:00:00',1,'mod_unread',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (7, 'Usuarios Online','',2,'header',0,'0000-00-00 00:00:00',1,'mod_online',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (8, 'Toolbar','',1,'toolbar',0,'0000-00-00 00:00:00',1,'mod_toolbar',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (9, 'Iconos rápidos','',1,'icon',0,'0000-00-00 00:00:00',1,'mod_quickicon',0,2,1,'',1,1, '');
|
||||
INSERT INTO `#__modules` VALUES (10, 'Usuarios identificados','',2,'cpanel',0,'0000-00-00 00:00:00',1,'mod_logged',0,2,1,'',0,1, '');
|
||||
INSERT INTO `#__modules` VALUES (11, 'Footer', '', 0, 'footer', 0, '0000-00-00 00:00:00', 1, 'mod_footer', 0, 0, 1, '', 1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (12, 'Menú Admin','', 1,'menu', 0,'0000-00-00 00:00:00', 1,'mod_menu', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (13, 'Admin SubMenu','', 1,'submenu', 0,'0000-00-00 00:00:00', 1,'mod_submenu', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (14, 'Estado del usuario','', 1,'status', 0,'0000-00-00 00:00:00', 1,'mod_status', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (15, 'Título','', 1,'title', 0,'0000-00-00 00:00:00', 1,'mod_title', 0, 2, 1, '', 0, 1, '');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__modules_menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__modules_menu` (
|
||||
`moduleid` int(11) NOT NULL default '0',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`moduleid`,`menuid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__modules_menu`
|
||||
#
|
||||
|
||||
INSERT INTO `#__modules_menu` VALUES (1,0);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__newsfeeds`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__newsfeeds` (
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` text NOT NULL,
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`link` text NOT NULL,
|
||||
`filename` varchar(200) default NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`numarticles` int(11) unsigned NOT NULL default '1',
|
||||
`cache_time` int(11) unsigned NOT NULL default '3600',
|
||||
`checked_out` tinyint(3) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`rtl` tinyint(4) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `published` (`published`),
|
||||
KEY `catid` (`catid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_data`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_data` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`pollid` int(11) NOT NULL default '0',
|
||||
`text` text NOT NULL default '',
|
||||
`hits` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `pollid` (`pollid`,`text`(1))
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_date`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_date` (
|
||||
`id` bigint(20) NOT NULL auto_increment,
|
||||
`date` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`vote_id` int(11) NOT NULL default '0',
|
||||
`poll_id` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__polls`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__polls` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`title` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`voters` int(9) NOT NULL default '0',
|
||||
`checked_out` int(11) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`access` int(11) NOT NULL default '0',
|
||||
`lag` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_menu`
|
||||
# !!!DEPRECATED!!!
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_menu` (
|
||||
`pollid` int(11) NOT NULL default '0',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`pollid`,`menuid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__sections`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__sections` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`title` varchar(255) NOT NULL default '',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`image` TEXT NOT NULL default '',
|
||||
`scope` varchar(50) NOT NULL default '',
|
||||
`image_position` varchar(30) NOT NULL default '',
|
||||
`description` text NOT NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`count` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_scope` (`scope`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__session`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__session` (
|
||||
`username` varchar(150) default '',
|
||||
`time` varchar(14) default '',
|
||||
`session_id` varchar(200) NOT NULL default '0',
|
||||
`guest` tinyint(4) default '1',
|
||||
`userid` int(11) default '0',
|
||||
`usertype` varchar(50) default '',
|
||||
`gid` tinyint(3) unsigned NOT NULL default '0',
|
||||
`client_id` tinyint(3) unsigned NOT NULL default '0',
|
||||
`data` longtext,
|
||||
PRIMARY KEY (`session_id`(64)),
|
||||
KEY `whosonline` (`guest`,`usertype`),
|
||||
KEY `userid` (`userid`),
|
||||
KEY `time` (`time`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__stats_agents`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__stats_agents` (
|
||||
`agent` varchar(255) NOT NULL default '',
|
||||
`type` tinyint(1) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '1'
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__templates_menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__templates_menu` (
|
||||
`template` varchar(255) NOT NULL default '',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
`client_id` tinyint(4) NOT NULL default '0',
|
||||
PRIMARY KEY (`menuid`, `client_id`, `template`(255))
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# Dumping data for table `#__templates_menu`
|
||||
INSERT INTO `#__templates_menu` VALUES ('ja_purity', '0', '0');
|
||||
INSERT INTO `#__templates_menu` VALUES ('khepri', '0', '1');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__users`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__users` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`username` varchar(150) NOT NULL default '',
|
||||
`email` varchar(100) NOT NULL default '',
|
||||
`password` varchar(100) NOT NULL default '',
|
||||
`usertype` varchar(25) NOT NULL default '',
|
||||
`block` tinyint(4) NOT NULL default '0',
|
||||
`sendEmail` tinyint(4) default '0',
|
||||
`gid` tinyint(3) unsigned NOT NULL default '1',
|
||||
`registerDate` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`lastvisitDate` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`activation` varchar(100) NOT NULL default '',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `usertype` (`usertype`),
|
||||
KEY `idx_name` (`name`),
|
||||
KEY `gid_block` (`gid`, `block`),
|
||||
KEY `username` (`username`),
|
||||
KEY `email` (`email`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__weblinks`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__weblinks` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`sid` int(11) NOT NULL default '0',
|
||||
`title` varchar(250) NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`url` varchar(250) NOT NULL default '',
|
||||
`description` text NOT NULL default '',
|
||||
`date` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`hits` int(11) NOT NULL default '0',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`archived` tinyint(1) NOT NULL default '0',
|
||||
`approved` tinyint(1) NOT NULL default '1',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `catid` (`catid`,`published`,`archived`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__core_acl_aro` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`section_value` varchar(240) NOT NULL default '0',
|
||||
`value` varchar(240) NOT NULL default '',
|
||||
`order_value` int(11) NOT NULL default '0',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`hidden` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `#__section_value_value_aro` (`section_value`(100),`value`(100)),
|
||||
KEY `#__gacl_hidden_aro` (`hidden`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_map`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__core_acl_aro_map` (
|
||||
`acl_id` int(11) NOT NULL default '0',
|
||||
`section_value` varchar(230) NOT NULL default '0',
|
||||
`value` varchar(100) NOT NULL,
|
||||
PRIMARY KEY (`acl_id`,`section_value`,`value`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_groups`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_aro_groups` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`parent_id` int(11) NOT NULL default '0',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`lft` int(11) NOT NULL default '0',
|
||||
`rgt` int(11) NOT NULL default '0',
|
||||
`value` varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `#__gacl_parent_id_aro_groups` (`parent_id`),
|
||||
KEY `#__gacl_lft_rgt_aro_groups` (`lft`,`rgt`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__core_acl_aro_groups`
|
||||
#
|
||||
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (17,0,'ROOT',1,22,'ROOT');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (28,17,'USERS',2,21,'USERS');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (29,28,'Public Frontend',3,12,'Public Frontend');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (18,29,'Registered',4,11,'Registered');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (19,18,'Author',5,10,'Author');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (20,19,'Editor',6,9,'Editor');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (21,20,'Publisher',7,8,'Publisher');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (30,28,'Public Backend',13,20,'Public Backend');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (23,30,'Manager',14,19,'Manager');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (24,23,'Administrator',15,18,'Administrator');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (25,24,'Super Administrator',16,17,'Super Administrator');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_groups_aro_map`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_groups_aro_map` (
|
||||
`group_id` int(11) NOT NULL default '0',
|
||||
`section_value` varchar(240) NOT NULL default '',
|
||||
`aro_id` int(11) NOT NULL default '0',
|
||||
UNIQUE KEY `group_id_aro_id_groups_aro_map` (`group_id`,`section_value`,`aro_id`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_sections`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_aro_sections` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`value` varchar(230) NOT NULL default '',
|
||||
`order_value` int(11) NOT NULL default '0',
|
||||
`name` varchar(230) NOT NULL default '',
|
||||
`hidden` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `#__gacl_value_aro_sections` (`value`),
|
||||
KEY `#__gacl_hidden_aro_sections` (`hidden`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
INSERT INTO `#__core_acl_aro_sections` VALUES (10,'users',1,'Users',0);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__migration_backlinks`
|
||||
#
|
||||
CREATE TABLE #__migration_backlinks (
|
||||
`itemid` INT(11) NOT NULL,
|
||||
`name` VARCHAR(100) NOT NULL,
|
||||
`url` TEXT NOT NULL,
|
||||
`sefurl` TEXT NOT NULL,
|
||||
`newurl` TEXT NOT NULL,
|
||||
PRIMARY KEY(`itemid`)
|
||||
) TYPE=MyISAM CHARACTER SET `utf8`;
|
||||
|
||||
# --------------------------------------------------------
|
||||
841
www/-installation-/sql/mysql/joomla_backward.sql
Normal file
@ -0,0 +1,841 @@
|
||||
# $Id: joomla_backward.sql 6311 2007-01-18 23:18:53Z hackwar $
|
||||
# Traducida y ajustada para Joomla! 1.5 Spanish www.joomlaspanish.org 21-12-2207
|
||||
# IMPORTANTE - THIS FILE MUST BE SAVED WITH UTF-8 ENCODING ONLY.
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__banner`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__banner` (
|
||||
`bid` int(11) NOT NULL auto_increment,
|
||||
`cid` int(11) NOT NULL default '0',
|
||||
`type` varchar(90) NOT NULL default 'banner',
|
||||
`name` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`imptotal` int(11) NOT NULL default '0',
|
||||
`impmade` int(11) NOT NULL default '0',
|
||||
`clicks` int(11) NOT NULL default '0',
|
||||
`imageurl` varchar(100) NOT NULL default '',
|
||||
`clickurl` varchar(200) NOT NULL default '',
|
||||
`date` datetime default NULL,
|
||||
`showBanner` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` tinyint(1) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`editor` varchar(150) default NULL,
|
||||
`custombannercode` text,
|
||||
`catid` INTEGER UNSIGNED NOT NULL DEFAULT 0,
|
||||
`description` TEXT NOT NULL DEFAULT '',
|
||||
`sticky` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
|
||||
`ordering` INTEGER NOT NULL DEFAULT 0,
|
||||
`publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`tags` TEXT NOT NULL DEFAULT '',
|
||||
`params` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`bid`),
|
||||
KEY `viewbanner` (`showBanner`),
|
||||
INDEX `idx_banner_catid`(`catid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__bannerclient`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__bannerclient` (
|
||||
`cid` int(11) NOT NULL auto_increment,
|
||||
`name` TEXT NOT NULL default '',
|
||||
`contact` TEXT NOT NULL default '',
|
||||
`email` varchar(255) NOT NULL default '',
|
||||
`extrainfo` text NOT NULL,
|
||||
`checked_out` tinyint(1) NOT NULL default '0',
|
||||
`checked_out_time` time default NULL,
|
||||
`editor` varchar(150) default NULL,
|
||||
PRIMARY KEY (`cid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__bannertrack`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__bannertrack` (
|
||||
`track_date` date NOT NULL,
|
||||
`track_type` int(10) unsigned NOT NULL,
|
||||
`banner_id` int(10) unsigned NOT NULL
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__categories`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__categories` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`parent_id` int(11) NOT NULL default 0,
|
||||
`title` TEXT NOT NULL default '',
|
||||
`name` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`image` varchar(255) NOT NULL default '',
|
||||
`section` varchar(150) NOT NULL default '',
|
||||
`image_position` varchar(90) NOT NULL default '',
|
||||
`description` text NOT NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`editor` varchar(150) default NULL,
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`count` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `cat_idx` (`section`,`published`,`access`),
|
||||
KEY `idx_access` (`access`),
|
||||
KEY `idx_checkout` (`checked_out`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__components`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__components` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` varchar(150) NOT NULL default '',
|
||||
`link` varchar(255) NOT NULL default '',
|
||||
`menuid` int(11) unsigned NOT NULL default '0',
|
||||
`parent` int(11) unsigned NOT NULL default '0',
|
||||
`admin_menu_link` varchar(255) NOT NULL default '',
|
||||
`admin_menu_alt` TEXT NOT NULL default '',
|
||||
`option` varchar(50) NOT NULL default '',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`admin_menu_img` varchar(255) NOT NULL default '',
|
||||
`iscore` tinyint(4) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
`enabled` tinyint(4) NOT NULL default '1',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `parent_option` (`parent`, `option`(32))
|
||||
) TYPE=MyISAM;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__components`
|
||||
#
|
||||
|
||||
INSERT INTO `#__components` VALUES (1, 'Banners', '', 0, 0, '', 'Banner Management', 'com_banners', 0, 'js/ThemeOffice/component.png', 0, 'track_impressions=0\ntrack_clicks=0\ntag_prefix=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (2, 'Banners', '', 0, 1, 'option=com_banners', 'Active Banners', 'com_banners', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (3, 'Clientes', '', 0, 1, 'option=com_banners&c=client', 'Manage Clients', 'com_banners', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (4, 'Enlaces Web', 'option=com_weblinks', 0, 0, '', 'Manage Weblinks', 'com_weblinks', 0, 'js/ThemeOffice/component.png', 0, 'show_comp_description=1\ncomp_description=\nshow_link_hits=1\nshow_link_description=1\nshow_other_cats=1\nshow_headings=1\nshow_page_title=1\nlink_target=0\nlink_icons=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (5, 'Enlaces', '', 0, 4, 'option=com_weblinks', 'View existing weblinks', 'com_weblinks', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (6, 'Categorías', '', 0, 4, 'option=com_categories§ion=com_weblinks', 'Manage weblink categories', '', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (7, 'Contactos', 'option=com_contact', 0, 0, '', 'Edit contact details', 'com_contact', 0, 'js/ThemeOffice/component.png', 1, 'contact_icons=0\nicon_address=\nicon_email=\nicon_telephone=\nicon_fax=\nicon_misc=\nshow_headings=1\nshow_position=1\nshow_email=0\nshow_telephone=1\nshow_mobile=1\nshow_fax=1\nbannedEmail=\nbannedSubject=\nbannedText=\nsession=1\ncustomReply=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (8, 'Contactos', '', 0, 7, 'option=com_contact', 'Edit contact details', 'com_contact', 0, 'js/ThemeOffice/edit.png', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (9, 'Categorías', '', 0, 7, 'option=com_categories§ion=com_contact_details', 'Manage contact categories', '', 2, 'js/ThemeOffice/categories.png', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (10, 'Encuesta', 'option=com_poll', 0, 0, 'option=com_poll', 'Manage Polls', 'com_poll', 0, 'js/ThemeOffice/component.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (11, 'News Feeds', 'option=com_newsfeeds', 0, 0, '', 'News Feeds Management', 'com_newsfeeds', 0, 'js/ThemeOffice/component.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (12, 'Feeds', '', 0, 11, 'option=com_newsfeeds', 'Manage News Feeds', 'com_newsfeeds', 1, 'js/ThemeOffice/edit.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (13, 'Categorías', '', 0, 11, 'option=com_categories§ion=com_newsfeeds', 'Manage Categories', '', 2, 'js/ThemeOffice/categories.png', 0, '', 1);
|
||||
INSERT INTO `#__components` VALUES (14, 'Usuario', 'option=com_user', 0, 0, '', '', 'com_user', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (15, 'Buscar', 'option=com_search', 0, 0, 'option=com_search', 'Search Statistics', 'com_search', 0, 'js/ThemeOffice/component.png', 1, 'enabled=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (16, 'Categorías', '', 0, 1, 'option=com_categories§ion=com_banner', 'Categories', '', 3, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (17, 'Wrapper', 'option=com_wrapper', 0, 0, '', 'Wrapper', 'com_wrapper', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (18, 'Mail para', '', 0, 0, '', '', 'com_mailto', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (19, 'Administrador Media', '', 0, 0, 'option=com_media', 'Media Manager', 'com_media', 0, '', 1, 'upload_extensions=bmp,csv,doc,epg,gif,ico,jpg,odg,odp,ods,odt,pdf,png,ppt,swf,txt,xcf,xls,BMP,CSV,DOC,EPG,GIF,ICO,JPG,ODG,ODP,ODS,ODT,PDF,PNG,PPT,SWF,TXT,XCF,XLS\nupload_maxsize=10000000\nfile_path=images\nimage_path=images/stories\nrestrict_uploads=1\ncheck_mime=1\nimage_extensions=bmp,gif,jpg,png\nignore_extensions=\nupload_mime=image/jpeg,image/gif,image/png,image/bmp,application/x-shockwave-flash,application/msword,application/excel,application/pdf,application/powerpoint,text/plain,application/x-zip\nupload_mime_illegal=text/html', 1);
|
||||
INSERT INTO `#__components` VALUES (20, 'Artículos', 'option=com_content', 0, 0, '', '', 'com_content', 0, '', 1, 'show_noauth=0\nshow_title=1\nlink_titles=0\nshow_intro=1\nshow_section=0\nlink_section=0\nshow_category=0\nlink_category=0\nshow_author=1\nshow_create_date=1\nshow_modify_date=1\nshow_item_navigation=0\nshow_readmore=1\nshow_vote=0\nshow_icons=1\nshow_pdf_icon=1\nshow_print_icon=1\nshow_email_icon=1\nshow_hits=1\nfeed_summary=0\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (21, 'Administrar Configuración', '', 0, 0, '', 'Configuration', 'com_config', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (22, 'Administrar Instalaciones', '', 0, 0, '', 'Installer', 'com_installer', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (23, 'Gestor de idiomas', '', 0, 0, '', 'Idiomas', 'com_languages', 0, '', 1, 'site=es-ES\nadministrator=es-ES\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (24, 'Mail masivo', '', 0, 0, '', 'Mass Mail', 'com_massmail', 0, '', 1, 'mailSubjectPrefix=\nmailBodySuffix=\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (25, 'Menú del editor', '', 0, 0, '', 'Menu Editor', 'com_menus', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (27, 'Mensajes', '', 0, 0, '', 'Messages', 'com_messages', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (28, 'Administrar modulos', '', 0, 0, '', 'Modules', 'com_modules', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (29, 'Administrar Plugin', '', 0, 0, '', 'Plugins', 'com_plugins', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (30, 'Administrar plantilla', '', 0, 0, '', 'Templates', 'com_templates', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (31, 'Administrar usuarios', '', 0, 0, '', 'Users', 'com_users', 0, '', 1, 'allowUserRegistration=1\nnew_usertype=Registered\nuseractivation=1\nfrontend_userparams=1\n\n', 1);
|
||||
INSERT INTO `#__components` VALUES (32, 'Administrar la caché', '', 0, 0, '', 'Cache', 'com_cache', 0, '', 1, '', 1);
|
||||
INSERT INTO `#__components` VALUES (33, 'Panel de Control', '', 0, 0, '', 'Control Panel', 'com_cpanel', 0, '', 1, '', 1);
|
||||
INSERT INTO `jos_components` VALUES(34, 'Administrador de Traducciones', 'option=com_translationsmanager', 0, 0, 'option=com_translationsmanager', 'Administrador de Traducciones', 'com_translationsmanager', 0, 'class:language', 0, '', 1);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__contact_details`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__contact_details` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`con_position` TEXT default NULL,
|
||||
`address` text,
|
||||
`suburb` TEXT default NULL,
|
||||
`state` TEXT default NULL,
|
||||
`country` TEXT default NULL,
|
||||
`postcode` varchar(255) default NULL,
|
||||
`telephone` varchar(255) default NULL,
|
||||
`fax` varchar(255) default NULL,
|
||||
`misc` mediumtext,
|
||||
`image` varchar(255) default NULL,
|
||||
`imagepos` varchar(60) default NULL,
|
||||
`email_to` varchar(255) default NULL,
|
||||
`default_con` tinyint(1) unsigned NOT NULL default '0',
|
||||
`published` tinyint(1) unsigned NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
`user_id` int(11) NOT NULL default '0',
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`mobile` varchar(255) NOT NULL default '',
|
||||
`webpage` varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `catid` (`catid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`title` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`title_alias` TEXT NOT NULL default '',
|
||||
`introtext` mediumtext NOT NULL,
|
||||
`fulltext` mediumtext NOT NULL,
|
||||
`state` tinyint(3) NOT NULL default '0',
|
||||
`sectionid` int(11) unsigned NOT NULL default '0',
|
||||
`mask` int(11) unsigned NOT NULL default '0',
|
||||
`catid` int(11) unsigned NOT NULL default '0',
|
||||
`created` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`created_by` int(11) unsigned NOT NULL default '0',
|
||||
`created_by_alias` TEXT NOT NULL default '',
|
||||
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`modified_by` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`images` text NOT NULL,
|
||||
`urls` text NOT NULL,
|
||||
`attribs` text NOT NULL,
|
||||
`version` int(11) unsigned NOT NULL default '1',
|
||||
`parentid` int(11) unsigned NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`metakey` text NOT NULL,
|
||||
`metadesc` text NOT NULL,
|
||||
`access` int(11) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '0',
|
||||
`metadata` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_section` (`sectionid`),
|
||||
KEY `idx_access` (`access`),
|
||||
KEY `idx_checkout` (`checked_out`),
|
||||
KEY `idx_state` (`state`),
|
||||
KEY `idx_catid` (`catid`),
|
||||
KEY `idx_createdby` (`created_by`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content_frontpage`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content_frontpage` (
|
||||
`content_id` int(11) NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`content_id`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__content_rating`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__content_rating` (
|
||||
`content_id` int(11) NOT NULL default '0',
|
||||
`rating_sum` int(11) unsigned NOT NULL default '0',
|
||||
`rating_count` int(11) unsigned NOT NULL default '0',
|
||||
`lastip` varchar(150) NOT NULL default '',
|
||||
PRIMARY KEY (`content_id`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
# Table structure for table `#__core_log_items`
|
||||
|
||||
CREATE TABLE `#__core_log_items` (
|
||||
`time_stamp` date NOT NULL default '0000-00-00',
|
||||
`item_table` varchar(50) NOT NULL default '',
|
||||
`item_id` int(11) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '0'
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
# Table structure for table `#__core_log_searches`
|
||||
|
||||
CREATE TABLE `#__core_log_searches` (
|
||||
`search_term` TEXT NOT NULL default '',
|
||||
`hits` int(11) unsigned NOT NULL default '0'
|
||||
) TYPE=MyISAM;
|
||||
|
||||
#
|
||||
# Table structure for table `#__groups`
|
||||
#
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
CREATE TABLE `#__groups` (
|
||||
`id` tinyint(3) unsigned NOT NULL default '0',
|
||||
`name` varchar(150) NOT NULL default '',
|
||||
PRIMARY KEY (`id`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__groups`
|
||||
#
|
||||
|
||||
INSERT INTO `#__groups` VALUES (0, 'Public');
|
||||
INSERT INTO `#__groups` VALUES (1, 'Registered');
|
||||
INSERT INTO `#__groups` VALUES (2, 'Special');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__plugins`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__plugins` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` TEXT NOT NULL default '',
|
||||
`element` TEXT NOT NULL default '',
|
||||
`folder` varchar(100) NOT NULL default '',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`published` tinyint(3) NOT NULL default '0',
|
||||
`iscore` tinyint(3) NOT NULL default '0',
|
||||
`client_id` tinyint(3) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_folder` (`published`,`client_id`,`access`,`folder`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
INSERT INTO `#__plugins` VALUES (1, 'Authentication - Joomla', 'joomla', 'authentication', 0, 1, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (2, 'Authentication - LDAP', 'ldap', 'authentication', 0, 2, 0, 1, 0, 0, '0000-00-00 00:00:00', 'host=\nport=389\nuse_ldapV3=0\nnegotiate_tls=0\nno_referrals=0\nauth_method=bind\nbase_dn=\nsearch_string=\nusers_dn=\nusername=\npassword=\nldap_fullname=fullName\nldap_email=mail\nldap_uid=uid\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (3, 'Authentication - GMail', 'gmail', 'authentication', 0, 4, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (4, 'Authentication - OpenID', 'openid', 'authentication', 0, 3, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (5, 'Usuario - Joomla!', 'joomla', 'user', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', 'autoregister=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (6, 'Search - Content','content','search',0,1,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\nsearch_content=1\nsearch_uncategorised=1\nsearch_archived=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (7, 'Search - Contacts','contacts','search',0,3,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (8, 'Search - Categories', 'categories', 'search', 0, 4, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (9, 'Search - Sections', 'sections', 'search', 0, 5, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (10, 'Search - Newsfeeds', 'newsfeeds', 'search', 0, 6, 1, 0, 0, 0, '0000-00-00 00:00:00', 'search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (11, 'Search - Weblinks','weblinks','search',0,2,1,1,0,0,'0000-00-00 00:00:00','search_limit=50\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (12, 'Content - Pagebreak','pagebreak','content',0,10000,1,1,0,0,'0000-00-00 00:00:00','enabled=1\ntitle=1\nmultipage_toc=1\nshowall=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (13, 'Content - Rating','vote','content',0,4,1,1,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (14, 'Content - Email Cloaking', 'emailcloak', 'content', 0, 5, 1, 0, 0, 0, '0000-00-00 00:00:00', 'mode=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (15, 'Content - Code Hightlighter (GeSHi)', 'geshi', 'content', 0, 5, 0, 0, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (16, 'Content - Load Module', 'loadmodule', 'content', 0, 6, 1, 0, 0, 0, '0000-00-00 00:00:00', 'enabled=1\nstyle=0\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (17, 'Content - Page Navigation','pagenavigation','content',0,2,1,1,0,0,'0000-00-00 00:00:00','position=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (18, 'Editor - No Editor','none','editors',0,0,1,1,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (19, 'Editor - TinyMCE 2.0', 'tinymce', 'editors', 0, 0, 1, 1, 0, 0, '0000-00-00 00:00:00', 'theme=advanced\ncleanup=1\ncleanup_startup=0\nautosave=0\ncompressed=0\nrelative_urls=1\ntext_direction=ltr\nlang_mode=0\nlang_code=es\ninvalid_elements=applet\ncontent_css=1\ncontent_css_custom=\nnewlines=0\ntoolbar=top\nhr=1\nsmilies=1\ntable=1\nstyle=1\nlayer=1\nxhtmlxtras=0\ntemplate=0\ndirectionality=1\nfullscreen=1\nhtml_height=550\nhtml_width=750\npreview=1\ninsertdate=1\nformat_date=%Y-%m-%d\ninserttime=1\nformat_time=%H:%M:%S\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (20, 'Editor - XStandard Lite 2.0', 'xstandard', 'editors', 0, 0, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (21, 'Editor Button - Image','image','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (22, 'Editor Button - Pagebreak','pagebreak','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (23, 'Editor Button - Readmore','readmore','editors-xtd',0,0,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (24, 'XML-RPC - Joomla', 'joomla', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (25, 'XML-RPC - Blogger API', 'blogger', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', 'catid=1\nsectionid=0\n\n');
|
||||
#INSERT INTO `#__plugins` VALUES (26, 'XML-RPC - MetaWeblog API', 'metaweblog', 'xmlrpc', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (27, 'Sistema - SEF','sef','system',0,1,1,0,0,0,'0000-00-00 00:00:00','');
|
||||
INSERT INTO `#__plugins` VALUES (28, 'Sistema - Debug', 'debug', 'system', 0, 2, 1, 0, 0, 0, '0000-00-00 00:00:00', 'queries=1\nmemory=1\nlangauge=1\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (29, 'Sistema - Legacy', 'legacy', 'system', 0, 3, 0, 1, 0, 0, '0000-00-00 00:00:00', 'route=0\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (30, 'Sistema - Cache', 'cache', 'system', 0, 4, 0, 1, 0, 0, '0000-00-00 00:00:00', 'browsercache=0\ncachetime=15\n\n');
|
||||
INSERT INTO `#__plugins` VALUES (31, 'Sistema - Log', 'log', 'system', 0, 5, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (32, 'Sistema - Remember Me', 'remember', 'system', 0, 6, 1, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
INSERT INTO `#__plugins` VALUES (33, 'Sistema - Backlink', 'backlink', 'system', 0, 7, 0, 1, 0, 0, '0000-00-00 00:00:00', '');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__menu` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`menutype` varchar(225) default NULL,
|
||||
`name` TEXT default NULL,
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`link` text,
|
||||
`type` varchar(150) NOT NULL default '',
|
||||
`published` tinyint(1) NOT NULL default 0,
|
||||
`parent` int(11) unsigned NOT NULL default 0,
|
||||
`componentid` int(11) unsigned NOT NULL default 0,
|
||||
`sublevel` int(11) default 0,
|
||||
`ordering` int(11) default 0,
|
||||
`checked_out` int(11) unsigned NOT NULL default 0,
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`pollid` int(11) NOT NULL default 0,
|
||||
`browserNav` tinyint(4) default 0,
|
||||
`access` tinyint(3) unsigned NOT NULL default 0,
|
||||
`utaccess` tinyint(3) unsigned NOT NULL default 0,
|
||||
`params` text NOT NULL,
|
||||
`lft` int(11) unsigned NOT NULL default 0,
|
||||
`rgt` int(11) unsigned NOT NULL default 0,
|
||||
`home` INTEGER(1) UNSIGNED NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `componentid` (`componentid`,`menutype`,`published`,`access`),
|
||||
KEY `menutype` (`menutype`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
INSERT INTO `#__menu` VALUES (1, 'mainmenu', 'Inicio', 'home', 'index.php?option=com_content&view=frontpage', 'component', 1, 0, 20, 0, 1, 0, '0000-00-00 00:00:00', 0, 0, 0, 3, 'show_page_title=1\npage_title=Bienvenidos a la portada\nshow_description=0\nshow_description_image=0\nnum_leading_articles=1\nnum_intro_articles=4\nnum_columns=2\nnum_links=4\nshow_title=1\npageclass_sfx=\nmenu_image=-1\nsecure=0\norderby_pri=\norderby_sec=front\nshow_pagination=2\nshow_pagination_results=1\nshow_noauth=0\nlink_titles=0\nshow_intro=1\nshow_section=0\nlink_section=0\nshow_category=0\nlink_category=0\nshow_author=1\nshow_create_date=1\nshow_modify_date=1\nshow_item_navigation=0\nshow_readmore=1\nshow_vote=0\nshow_icons=1\nshow_pdf_icon=1\nshow_print_icon=1\nshow_email_icon=1\nshow_hits=1\n\n', 0, 0, 1);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__menu_types`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__menu_types` (
|
||||
`id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`menutype` VARCHAR(225) NOT NULL DEFAULT '',
|
||||
`title` TEXT NOT NULL DEFAULT '',
|
||||
`description` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY(`id`),
|
||||
UNIQUE `menutype`(`menutype`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
INSERT INTO `#__menu_types` VALUES (1, 'mainmenu', 'Menú principal', 'The main menu for the site');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__messages`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__messages` (
|
||||
`message_id` int(10) unsigned NOT NULL auto_increment,
|
||||
`user_id_from` int(10) unsigned NOT NULL default '0',
|
||||
`user_id_to` int(10) unsigned NOT NULL default '0',
|
||||
`folder_id` int(10) unsigned NOT NULL default '0',
|
||||
`date_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`state` int(11) NOT NULL default '0',
|
||||
`priority` int(1) unsigned NOT NULL default '0',
|
||||
`subject` text NOT NULL default '',
|
||||
`message` text NOT NULL,
|
||||
PRIMARY KEY (`message_id`),
|
||||
KEY `useridto_state` (`user_id_to`, `state`)
|
||||
) TYPE=MyISAM;
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__messages_cfg`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__messages_cfg` (
|
||||
`user_id` int(10) unsigned NOT NULL default '0',
|
||||
`cfg_name` TEXT NOT NULL default '',
|
||||
`cfg_value` TEXT NOT NULL default '',
|
||||
UNIQUE `idx_user_var_name` (`user_id`,`cfg_name`(100))
|
||||
) TYPE=MyISAM;
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__modules`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__modules` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`title` text NOT NULL,
|
||||
`content` text NOT NULL,
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`position` varchar(150) default NULL,
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`module` varchar(150) default NULL,
|
||||
`numnews` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`showtitle` tinyint(3) unsigned NOT NULL default '1',
|
||||
`params` text NOT NULL,
|
||||
`iscore` tinyint(4) NOT NULL default '0',
|
||||
`client_id` tinyint(4) NOT NULL default '0',
|
||||
`control` TEXT NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `published` (`published`,`access`),
|
||||
KEY `newsfeeds` (`module`,`published`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
INSERT INTO `#__modules` VALUES (1, 'Menú principal', '', 1, 'left', 0, '0000-00-00 00:00:00', 1, 'mod_mainmenu', 0, 0, 1, 'menutype=mainmenu\nmoduleclass_sfx=_menu\n', 1, 0, '');
|
||||
INSERT INTO `#__modules` VALUES (2, 'Acceso', '', 1, 'login', 0, '0000-00-00 00:00:00', 1, 'mod_login', 0, 0, 1, '', 1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (3, 'Popular','',3,'cpanel',0,'0000-00-00 00:00:00',1,'mod_popular',0,2,1,'',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (4, 'Artículos añadidos recientemente','',4,'cpanel',0,'0000-00-00 00:00:00',1,'mod_latest',0,2,1,'ordering=c_dsc\nuser_id=0\ncache=0\n\n',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (5, 'Menú de estadísticas','',5,'cpanel',0,'0000-00-00 00:00:00',1,'mod_stats',0,2,1,'',0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (6, 'Los mensajes no leídos','',1,'header',0,'0000-00-00 00:00:00',1,'mod_unread',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (7, 'Usuarios Online','',2,'header',0,'0000-00-00 00:00:00',1,'mod_online',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (8, 'Toolbar','',1,'toolbar',0,'0000-00-00 00:00:00',1,'mod_toolbar',0,2,1,'',1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (9, 'Iconos rápidos','',1,'icon',0,'0000-00-00 00:00:00',1,'mod_quickicon',0,2,1,'',1,1, '');
|
||||
INSERT INTO `#__modules` VALUES (10, 'Usuarios identificados','',2,'cpanel',0,'0000-00-00 00:00:00',1,'mod_logged',0,2,1,'',0,1, '');
|
||||
INSERT INTO `#__modules` VALUES (11, 'Footer', '', 0, 'footer', 0, '0000-00-00 00:00:00', 1, 'mod_footer', 0, 0, 1, '', 1, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (12, 'Menú Admin','', 1,'menu', 0,'0000-00-00 00:00:00', 1,'mod_menu', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (13, 'Admin SubMenu','', 1,'submenu', 0,'0000-00-00 00:00:00', 1,'mod_submenu', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (14, 'Estado del usuario','', 1,'status', 0,'0000-00-00 00:00:00', 1,'mod_status', 0, 2, 1, '', 0, 1, '');
|
||||
INSERT INTO `#__modules` VALUES (15, 'Título','', 1,'title', 0,'0000-00-00 00:00:00', 1,'mod_title', 0, 2, 1, '', 0, 1, '');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__modules_menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__modules_menu` (
|
||||
`moduleid` int(11) NOT NULL default '0',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`moduleid`,`menuid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__modules_menu`
|
||||
#
|
||||
|
||||
INSERT INTO `#__modules_menu` VALUES (1,0);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__newsfeeds`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__newsfeeds` (
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` text NOT NULL,
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`link` text NOT NULL,
|
||||
`filename` varchar(200) default NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`numarticles` int(11) unsigned NOT NULL default '1',
|
||||
`cache_time` int(11) unsigned NOT NULL default '3600',
|
||||
`checked_out` tinyint(3) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`rtl` tinyint(4) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `published` (`published`),
|
||||
KEY `catid` (`catid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_data`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_data` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`pollid` int(11) NOT NULL default '0',
|
||||
`text` text NOT NULL default '',
|
||||
`hits` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `pollid` (`pollid`,`text`(1))
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_date`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_date` (
|
||||
`id` bigint(20) NOT NULL auto_increment,
|
||||
`date` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`vote_id` int(11) NOT NULL default '0',
|
||||
`poll_id` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__polls`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__polls` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`title` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`voters` int(9) NOT NULL default '0',
|
||||
`checked_out` int(11) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`access` int(11) NOT NULL default '0',
|
||||
`lag` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__poll_menu`
|
||||
# !!!DEPRECATED!!!
|
||||
#
|
||||
|
||||
CREATE TABLE `#__poll_menu` (
|
||||
`pollid` int(11) NOT NULL default '0',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`pollid`,`menuid`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__sections`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__sections` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`title` TEXT NOT NULL default '',
|
||||
`name` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`image` TEXT NOT NULL default '',
|
||||
`scope` varchar(50) NOT NULL default '',
|
||||
`image_position` varchar(90) NOT NULL default '',
|
||||
`description` text NOT NULL,
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) unsigned NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`access` tinyint(3) unsigned NOT NULL default '0',
|
||||
`count` int(11) NOT NULL default '0',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_scope` (`scope`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__session`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__session` (
|
||||
`username` varchar(150) default '',
|
||||
`time` varchar(14) default '',
|
||||
`session_id` varchar(200) NOT NULL default '0',
|
||||
`guest` tinyint(4) default '1',
|
||||
`userid` int(11) default '0',
|
||||
`usertype` varchar(150) default '',
|
||||
`gid` tinyint(3) unsigned NOT NULL default '0',
|
||||
`client_id` tinyint(3) unsigned NOT NULL default '0',
|
||||
`data` longtext,
|
||||
PRIMARY KEY (`session_id`(64)),
|
||||
KEY `whosonline` (`guest`,`usertype`),
|
||||
KEY `userid` (`userid`),
|
||||
KEY `time` (`time`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__stats_agents`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__stats_agents` (
|
||||
`agent` varchar(255) NOT NULL default '',
|
||||
`type` tinyint(1) unsigned NOT NULL default '0',
|
||||
`hits` int(11) unsigned NOT NULL default '1'
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__templates_menu`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__templates_menu` (
|
||||
`template` TEXT NOT NULL default '',
|
||||
`menuid` int(11) NOT NULL default '0',
|
||||
`client_id` tinyint(4) NOT NULL default '0',
|
||||
PRIMARY KEY (`menuid`, `client_id`, `template`(255))
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# Dumping data for table `#__templates_menu`
|
||||
|
||||
INSERT INTO `#__templates_menu` VALUES ('rhuk_milkyway', '0', '0');
|
||||
INSERT INTO `#__templates_menu` VALUES ('khepri', '0', '1');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__users`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__users` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`name` TEXT NOT NULL default '',
|
||||
`username` varchar(150) NOT NULL default '',
|
||||
`email` varchar(100) NOT NULL default '',
|
||||
`password` varchar(100) NOT NULL default '',
|
||||
`usertype` varchar(75) NOT NULL default '',
|
||||
`block` tinyint(4) NOT NULL default '0',
|
||||
`sendEmail` tinyint(4) default '0',
|
||||
`gid` tinyint(3) unsigned NOT NULL default '1',
|
||||
`registerDate` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`lastvisitDate` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`activation` varchar(100) NOT NULL default '',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `usertype` (`usertype`),
|
||||
KEY `idx_name` (`name`(255)),
|
||||
KEY `gid_block` (`gid`, `block`),
|
||||
KEY `username` (`username`),
|
||||
KEY `email` (`email`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__weblinks`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__weblinks` (
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`catid` int(11) NOT NULL default '0',
|
||||
`sid` int(11) NOT NULL default '0',
|
||||
`title` TEXT NOT NULL default '',
|
||||
`alias` varchar(255) NOT NULL default '',
|
||||
`url` varchar(250) NOT NULL default '',
|
||||
`description` text NOT NULL default '',
|
||||
`date` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`hits` int(11) NOT NULL default '0',
|
||||
`published` tinyint(1) NOT NULL default '0',
|
||||
`checked_out` int(11) NOT NULL default '0',
|
||||
`checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00',
|
||||
`ordering` int(11) NOT NULL default '0',
|
||||
`archived` tinyint(1) NOT NULL default '0',
|
||||
`approved` tinyint(1) NOT NULL default '1',
|
||||
`params` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `catid` (`catid`,`published`,`archived`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__core_acl_aro` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`section_value` varchar(240) NOT NULL default '0',
|
||||
`value` varchar(240) NOT NULL default '',
|
||||
`order_value` int(11) NOT NULL default '0',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`hidden` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `__section_value_value_aro` (`section_value`(100),`value`(100)),
|
||||
KEY `#__gacl_hidden_aro` (`hidden`)
|
||||
) TYPE=MyISAM;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_map`
|
||||
#
|
||||
|
||||
CREATE TABLE `#__core_acl_aro_map` (
|
||||
`acl_id` int(11) NOT NULL default '0',
|
||||
`section_value` varchar(230) NOT NULL default '0',
|
||||
`value` varchar(100) NOT NULL,
|
||||
PRIMARY KEY (`acl_id`,`section_value`,`value`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_groups`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_aro_groups` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
`parent_id` int(11) NOT NULL default '0',
|
||||
`name` varchar(255) NOT NULL default '',
|
||||
`lft` int(11) NOT NULL default '0',
|
||||
`rgt` int(11) NOT NULL default '0',
|
||||
`value` varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `#__gacl_parent_id_aro_groups` (`parent_id`),
|
||||
KEY `#__gacl_lft_rgt_aro_groups` (`lft`,`rgt`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
#
|
||||
# Dumping data for table `#__core_acl_aro_groups`
|
||||
#
|
||||
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (17,0,'ROOT',1,22,'ROOT');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (28,17,'USERS',2,21,'USERS');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (29,28,'Public Frontend',3,12,'Public Frontend');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (18,29,'Registered',4,11,'Registered');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (19,18,'Author',5,10,'Author');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (20,19,'Editor',6,9,'Editor');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (21,20,'Publisher',7,8,'Publisher');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (30,28,'Public Backend',13,20,'Public Backend');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (23,30,'Manager',14,19,'Manager');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (24,23,'Administrator',15,18,'Administrator');
|
||||
INSERT INTO `#__core_acl_aro_groups` VALUES (25,24,'Super Administrator',16,17,'Super Administrator');
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_groups_aro_map`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_groups_aro_map` (
|
||||
`group_id` int(11) NOT NULL default '0',
|
||||
`section_value` varchar(240) NOT NULL default '',
|
||||
`aro_id` int(11) NOT NULL default '0',
|
||||
UNIQUE KEY `group_id_aro_id_groups_aro_map` (`group_id`,`section_value`,`aro_id`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__core_acl_aro_sections`
|
||||
#
|
||||
CREATE TABLE `#__core_acl_aro_sections` (
|
||||
`section_id` int(11) NOT NULL auto_increment,
|
||||
`value` varchar(230) NOT NULL default '',
|
||||
`order_value` int(11) NOT NULL default '0',
|
||||
`name` varchar(230) NOT NULL default '',
|
||||
`hidden` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`section_id`),
|
||||
UNIQUE KEY `#__gacl_value_aro_sections` (`value`),
|
||||
KEY `#__gacl_hidden_aro_sections` (`hidden`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
INSERT INTO `#__core_acl_aro_sections` VALUES (10,'users',1,'Users',0);
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
#
|
||||
# Table structure for table `#__migration_backlinks`
|
||||
#
|
||||
CREATE TABLE #__migration_backlinks (
|
||||
`itemid` INT(11) NOT NULL,
|
||||
`name` VARCHAR(100) NOT NULL,
|
||||
`url` TEXT NOT NULL,
|
||||
`sefurl` TEXT NOT NULL,
|
||||
`newurl` TEXT NOT NULL,
|
||||
PRIMARY KEY(`itemid`)
|
||||
) TYPE=MyISAM ;
|
||||
|
||||
# --------------------------------------------------------
|
||||
319
www/-installation-/sql/mysql/sample_data.sql
Normal file
1
www/-installation-/template/css/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
460
www/-installation-/template/css/template.css
Normal file
@ -0,0 +1,460 @@
|
||||
/* CSS Document */
|
||||
html {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 10px;
|
||||
padding: 0;
|
||||
background: #fff;
|
||||
height: 100%;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
body, div, p, td, span {
|
||||
font-family: Tahoma, Arial, sans-serif;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
a:link, a:visited {
|
||||
text-decoration: none;
|
||||
color: #0B55C4;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5,
|
||||
#header3 span,
|
||||
.step-on, .step-off, .step-grey,
|
||||
.step,
|
||||
.button1-left a,
|
||||
.button1-right a {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
|
||||
.clr {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.newsection {
|
||||
height: 20px;
|
||||
clear:both;
|
||||
}
|
||||
|
||||
form {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* installer */
|
||||
#header1 {
|
||||
background: url(../images/j_header_middle.png) repeat-x;
|
||||
}
|
||||
|
||||
#header2 {
|
||||
background: url(../images/j_header_right.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
#header3 {
|
||||
background: url(../images/j_header_left.png) no-repeat;
|
||||
height: 54px;
|
||||
}
|
||||
|
||||
#header3 span {
|
||||
font-size: 22px;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
padding-left: 180px;
|
||||
line-height: 44px;
|
||||
}
|
||||
|
||||
#version {
|
||||
float: right;
|
||||
color: #fff;
|
||||
padding-top: 25px;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
#footer1 {
|
||||
background: url(../images/j_bottom.png) repeat-x;
|
||||
}
|
||||
|
||||
#footer2 {
|
||||
background: url(../images/j_corner_br.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
#footer3 {
|
||||
background: url(../images/j_corner_bl.png) no-repeat;
|
||||
height: 11px;
|
||||
}
|
||||
|
||||
#content-box {
|
||||
float: none !important;
|
||||
float: left;
|
||||
border-left: 1px solid #ccc;
|
||||
border-right: 1px solid #ccc;
|
||||
}
|
||||
|
||||
#content-pad {
|
||||
padding: 10px 10px 0 10px;
|
||||
}
|
||||
|
||||
#stepbar {
|
||||
float: left;
|
||||
width: 170px;
|
||||
}
|
||||
|
||||
#stepbar div.box {
|
||||
background: url(../images/j_joomla_box.jpg) 50% 20px no-repeat;
|
||||
height: 140px;
|
||||
}
|
||||
|
||||
#stepbar h1 {
|
||||
margin: 0;
|
||||
padding-bottom: 8px;
|
||||
font-size: 20px;
|
||||
color: #0B55C4;
|
||||
font-weight: bold;
|
||||
background: url(../images/j_divider.png) 0 100% repeat-x;
|
||||
}
|
||||
|
||||
.step-on, .step-off, .step-grey {
|
||||
padding-top: 10px;
|
||||
padding-bottom: 12px;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
background: url(../images/j_divider.png) 0 100% repeat-x;
|
||||
}
|
||||
|
||||
.step-off {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.step-on {
|
||||
color: #0B55C4;
|
||||
}
|
||||
|
||||
.step-grey {
|
||||
color: #a7a7a7
|
||||
}
|
||||
|
||||
#right, #warning {
|
||||
margin-left: 180px;
|
||||
}
|
||||
|
||||
#rightpad {
|
||||
width: 100%;
|
||||
float: left;
|
||||
}
|
||||
|
||||
#step {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
span.step {
|
||||
font-size: 20px;
|
||||
line-height: 30px;
|
||||
color: #0B55C4;
|
||||
font-weight: bold;
|
||||
padding-left: 6px;
|
||||
}
|
||||
|
||||
.far-right {
|
||||
padding-right: 6px;
|
||||
margin-top: 2px;
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.button1-left {
|
||||
background: url(../images/j_button1_left.png) no-repeat;
|
||||
float: left;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.button1-right {
|
||||
background: url(../images/j_button1_right.png) 100% 0 no-repeat;
|
||||
float: left;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.button1-left .refresh {
|
||||
float: left;
|
||||
background: url(../images/j_button1_refresh.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
.button1-right .prev {
|
||||
float: left;
|
||||
background: url(../images/j_button1_prev.png) no-repeat;
|
||||
}
|
||||
|
||||
.button1-left .next {
|
||||
float: left;
|
||||
background: url(../images/j_button1_next.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
.button1-left .site {
|
||||
float: left;
|
||||
background: url(../images/j_button1_site.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
.button1-left .admin {
|
||||
float: left;
|
||||
background: url(../images/j_button1_admin.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
.button1-left .collate {
|
||||
float: left;
|
||||
background: url(../images/j_button1_collate.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.button1-left a,
|
||||
.button1-right a {
|
||||
display: block;
|
||||
height: 26px;
|
||||
float: left;
|
||||
line-height: 26px;
|
||||
font-size: 11px;
|
||||
font-weight: bold;
|
||||
color: #333;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.button1-left a {
|
||||
padding: 0 30px 0 6px;
|
||||
}
|
||||
|
||||
.button1-right a {
|
||||
padding: 0 6px 0 30px;
|
||||
}
|
||||
|
||||
#installer {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
#installer h2 {
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
height: 20px;
|
||||
color: #333;
|
||||
font-weight: bold;
|
||||
margin: 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.install-text {
|
||||
float: left;
|
||||
width: 40%;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
.install-body {
|
||||
float: right;
|
||||
width: 58%;
|
||||
}
|
||||
|
||||
.extra-padding {
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.install-body fieldset {
|
||||
padding: 5px;
|
||||
margin: 0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
#copyright {
|
||||
margin: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.Yes, .Writeable {
|
||||
font-weight: bold;
|
||||
color: #46882B;
|
||||
}
|
||||
|
||||
.No, .Unwriteable {
|
||||
font-weight: bold;
|
||||
color: #c00;
|
||||
}
|
||||
|
||||
.content { width: 100%; }
|
||||
.content .item { width: 50%; }
|
||||
.content2 .item { width: 30%; }
|
||||
|
||||
.license {
|
||||
padding: 0px;
|
||||
width: 100%;
|
||||
height: 500px;
|
||||
}
|
||||
|
||||
.error {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
color: #c00;
|
||||
}
|
||||
|
||||
h3.title-smenu, h3.moofx-toggler {
|
||||
margin: 0;
|
||||
border: 1px solid #ccc;
|
||||
padding: 4px;
|
||||
background-color: #EBEBEB;
|
||||
margin-bottom: 1px;
|
||||
font-size: 12px;
|
||||
color: #666;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
h3.moofx-toggler { background: #EBEBEB url(../images/j_arrow.png) 5px 50% no-repeat; text-indent: 15px; }
|
||||
h3.moofx-toggler-down { background-image: url(../images/j_arrow_down.png); }
|
||||
|
||||
/* hack to stop ugly aliasing in IE */
|
||||
div.moofx-slider {
|
||||
background: #fbfbfb;
|
||||
}
|
||||
|
||||
.final-table { width: 100%; }
|
||||
|
||||
td em {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
div#javascript-warning {
|
||||
padding: 1em;
|
||||
border: 1px solid #ccc;
|
||||
background-color: red;
|
||||
margin-bottom: 10px;
|
||||
font-size: 18px;
|
||||
color: white;
|
||||
}
|
||||
/* form limiting stuff */
|
||||
|
||||
#theDefault input {
|
||||
|
||||
}
|
||||
|
||||
/* corners */
|
||||
|
||||
div#stepbar {
|
||||
background: #f7f7f7;
|
||||
}
|
||||
|
||||
div#installer {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
div#installer div.install-body div.m {
|
||||
background: #fbfbfb;
|
||||
|
||||
}
|
||||
|
||||
div.t, div.b {
|
||||
height: 6px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
div.m {
|
||||
border-left: 1px solid #ccc;
|
||||
border-right: 1px solid #ccc;
|
||||
padding: 0 8px;
|
||||
}
|
||||
|
||||
div#step div.m {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div#installer div.m {
|
||||
padding-bottom: 1px !important;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
|
||||
div#stepbar div.t {
|
||||
background: url(../images/j_border.png) 0 0 repeat-x;
|
||||
}
|
||||
|
||||
div#stepbar div.t div.t {
|
||||
background: url(../images/j_crn_tr_dark.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#stepbar div.t div.t div.t {
|
||||
background: url(../images/j_crn_tl_dark.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
div#stepbar div.b {
|
||||
background: url(../images/j_border.png) 0 100% repeat-x;
|
||||
}
|
||||
|
||||
div#stepbar div.b div.b {
|
||||
background: url(../images/j_crn_br_dark.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#stepbar div.b div.b div.b {
|
||||
background: url(../images/j_crn_bl_dark.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
div#step,
|
||||
div#installer div.install-body {
|
||||
background: #fbfbfb;
|
||||
}
|
||||
|
||||
div#step div.t,
|
||||
div#installer div.install-body div.t {
|
||||
background: url(../images/j_border.png) 0 0 repeat-x;
|
||||
}
|
||||
|
||||
div#step div.t div.t,
|
||||
div#installer div.install-body div.t div.t {
|
||||
background: url(../images/j_crn_tr_med.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#step div.t div.t div.t,
|
||||
div#installer div.install-body div.t div.t div.t {
|
||||
background: url(../images/j_crn_tl_med.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
div#step div.b,
|
||||
div#installer div.install-body div.b {
|
||||
background: url(../images/j_border.png) 0 100% repeat-x;
|
||||
}
|
||||
|
||||
div#step div.b div.b,
|
||||
div#installer div.install-body div.b div.b {
|
||||
background: url(../images/j_crn_br_med.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#step div.b div.b div.b,
|
||||
div#installer div.install-body div.b div.b div.b {
|
||||
background: url(../images/j_crn_bl_med.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
div#installer div.t {
|
||||
background: url(../images/j_border.png) 0 0 repeat-x;
|
||||
}
|
||||
|
||||
div#installer div.t div.t {
|
||||
background: url(../images/j_crn_tr_light.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#installer div.t div.t div.t {
|
||||
background: url(../images/j_crn_tl_light.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
div#installer div.b {
|
||||
background: url(../images/j_border.png) 0 100% repeat-x;
|
||||
}
|
||||
|
||||
div#installer div.b div.b {
|
||||
background: url(../images/j_crn_br_light.png) 100% 0 no-repeat;
|
||||
}
|
||||
|
||||
div#installer div.b div.b div.b {
|
||||
background: url(../images/j_crn_bl_light.png) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
72
www/-installation-/template/css/template_rtl.css
Normal file
@ -0,0 +1,72 @@
|
||||
/**
|
||||
* Joomla! 1.5 Installation template main RTL css file
|
||||
*
|
||||
* @author Mati Kochen
|
||||
* @package Joomla
|
||||
* @since 1.5
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
body{
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
#header2 {
|
||||
background-image: url(../images/j_header_right_rtl.png);
|
||||
}
|
||||
|
||||
#header3 {
|
||||
background-image: url(../images/j_header_left_rtl.png);
|
||||
}
|
||||
|
||||
#version {
|
||||
float:left;
|
||||
padding-left:5px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
#stepbar {
|
||||
float:right;
|
||||
}
|
||||
|
||||
#right, #warning {
|
||||
margin-right:180px;
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
#rightpad {
|
||||
float:right;
|
||||
}
|
||||
|
||||
.far-right {
|
||||
float:left;
|
||||
padding-right:0px;
|
||||
padding-left:6px;
|
||||
text-align:left;
|
||||
}
|
||||
|
||||
span.step {
|
||||
padding-right:6px;
|
||||
padding-left:0px;
|
||||
}
|
||||
|
||||
.install-text,
|
||||
.install-form{
|
||||
float:right;
|
||||
}
|
||||
|
||||
.install-body{
|
||||
float: left;
|
||||
}
|
||||
|
||||
h3.moofx-toggler {
|
||||
background: url(../images/j_arrow_left.png) no-repeat scroll right 50%;
|
||||
}
|
||||
|
||||
h3.moofx-toggler-down {
|
||||
background:url(../images/j_arrow_down.png) no-repeat scroll right;
|
||||
}
|
||||
|
||||
#srcEncoding{
|
||||
text-align: right;
|
||||
}
|
||||
1
www/-installation-/template/images/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
BIN
www/-installation-/template/images/j_arrow.png
Normal file
|
After Width: | Height: | Size: 354 B |
BIN
www/-installation-/template/images/j_arrow_down.png
Normal file
|
After Width: | Height: | Size: 349 B |
BIN
www/-installation-/template/images/j_arrow_left.png
Normal file
|
After Width: | Height: | Size: 321 B |
BIN
www/-installation-/template/images/j_border.png
Normal file
|
After Width: | Height: | Size: 213 B |
BIN
www/-installation-/template/images/j_bottom.png
Normal file
|
After Width: | Height: | Size: 232 B |
BIN
www/-installation-/template/images/j_button1_admin.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
www/-installation-/template/images/j_button1_collate.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
www/-installation-/template/images/j_button1_left.png
Normal file
|
After Width: | Height: | Size: 483 B |
BIN
www/-installation-/template/images/j_button1_next.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
www/-installation-/template/images/j_button1_prev.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
www/-installation-/template/images/j_button1_refresh.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
www/-installation-/template/images/j_button1_right.png
Normal file
|
After Width: | Height: | Size: 448 B |
BIN
www/-installation-/template/images/j_button1_site.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
www/-installation-/template/images/j_corner_bl.png
Normal file
|
After Width: | Height: | Size: 303 B |
BIN
www/-installation-/template/images/j_corner_br.png
Normal file
|
After Width: | Height: | Size: 314 B |
BIN
www/-installation-/template/images/j_crn_bl_dark.png
Normal file
|
After Width: | Height: | Size: 252 B |
BIN
www/-installation-/template/images/j_crn_bl_light.png
Normal file
|
After Width: | Height: | Size: 246 B |
BIN
www/-installation-/template/images/j_crn_bl_med.png
Normal file
|
After Width: | Height: | Size: 248 B |
BIN
www/-installation-/template/images/j_crn_br_dark.png
Normal file
|
After Width: | Height: | Size: 259 B |
BIN
www/-installation-/template/images/j_crn_br_light.png
Normal file
|
After Width: | Height: | Size: 253 B |
BIN
www/-installation-/template/images/j_crn_br_med.png
Normal file
|
After Width: | Height: | Size: 256 B |
BIN
www/-installation-/template/images/j_crn_tl_dark.png
Normal file
|
After Width: | Height: | Size: 253 B |
BIN
www/-installation-/template/images/j_crn_tl_light.png
Normal file
|
After Width: | Height: | Size: 247 B |
BIN
www/-installation-/template/images/j_crn_tl_med.png
Normal file
|
After Width: | Height: | Size: 253 B |
BIN
www/-installation-/template/images/j_crn_tr_dark.png
Normal file
|
After Width: | Height: | Size: 259 B |
BIN
www/-installation-/template/images/j_crn_tr_light.png
Normal file
|
After Width: | Height: | Size: 252 B |
BIN
www/-installation-/template/images/j_crn_tr_med.png
Normal file
|
After Width: | Height: | Size: 262 B |
BIN
www/-installation-/template/images/j_divider.png
Normal file
|
After Width: | Height: | Size: 196 B |
BIN
www/-installation-/template/images/j_header_left.png
Normal file
|
After Width: | Height: | Size: 5.0 KiB |
BIN
www/-installation-/template/images/j_header_left_rtl.png
Normal file
|
After Width: | Height: | Size: 487 B |
BIN
www/-installation-/template/images/j_header_middle.png
Normal file
|
After Width: | Height: | Size: 385 B |
BIN
www/-installation-/template/images/j_header_right.png
Normal file
|
After Width: | Height: | Size: 366 B |
BIN
www/-installation-/template/images/j_header_right_rtl.png
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
BIN
www/-installation-/template/images/j_joomla_box.jpg
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
1
www/-installation-/template/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
46
www/-installation-/template/index.php
Normal file
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
// no direct access
|
||||
defined( '_JEXEC' ) or die( 'Restricted access' );
|
||||
?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>" >
|
||||
<head>
|
||||
<jdoc:include type="head" />
|
||||
|
||||
<link href="template/css/template.css" rel="stylesheet" type="text/css" />
|
||||
<?php if($this->direction == 'rtl') : ?>
|
||||
<link href="template/css/template_rtl.css" rel="stylesheet" type="text/css" />
|
||||
<?php endif; ?>
|
||||
|
||||
<script type="text/javascript" src="../media/system/js/mootools.js"></script>
|
||||
<script type="text/javascript" src="includes/js/installation.js"></script>
|
||||
<script type="text/javascript" src="template/js/validation.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
Window.onDomReady(function(){ new Accordion($$('h3.moofx-toggler'), $$('div.moofx-slider'), {onActive: function(toggler, i) { toggler.addClass('moofx-toggler-down'); },onBackground: function(toggler, i) { toggler.removeClass('moofx-toggler-down'); },duration: 300,opacity: false, alwaysHide:true, show: 1}); });
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header1">
|
||||
<div id="header2">
|
||||
<div id="header3">
|
||||
<div id="version"><?php echo JVERSION ?></div>
|
||||
<span><?php echo JText::_('Installation') ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="content-box">
|
||||
<div id="content-pad">
|
||||
<jdoc:include type="installation" />
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer1">
|
||||
<div id="footer2">
|
||||
<div id="footer3"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="copyright"><a href="http://www.joomla.org" target="_blank">Joomla!</a>
|
||||
<?php echo JText::_('ISFREESOFTWARE') ?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
1
www/-installation-/template/js/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
245
www/-installation-/template/js/validation.js
Normal file
@ -0,0 +1,245 @@
|
||||
/**
|
||||
* @version $Id: validation.js 10712 2008-08-21 10:09:39Z eddieajau $
|
||||
* @package Joomla
|
||||
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
|
||||
* Joomla! is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Unobtrusive Form Validation library
|
||||
*
|
||||
* Inspired by: Chris Campbell <www.particletree.com>
|
||||
*
|
||||
* @package Joomla
|
||||
* @subpackage Installation
|
||||
* @since 1.5
|
||||
*/
|
||||
|
||||
// JFormValidator prototype
|
||||
JFormValidator = function() { this.constructor.apply(this, arguments);}
|
||||
JFormValidator.prototype = {
|
||||
|
||||
constructor: function()
|
||||
{
|
||||
var self = this;
|
||||
|
||||
this.valid = true;
|
||||
this.vContinue = true;
|
||||
this.handlers = Object();
|
||||
|
||||
// Default regexes
|
||||
this.handlers['date'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/(((0[13578]|10|12)([-.\/])(0[1-9]|[12][0-9]|3[01])([-.\/])(\d{4}))|((0[469]|11)([-.\/])([0][1-9]|[12][0-9]|30)([-.\/])(\d{4}))|((2)([-.\/])(0[1-9]|1[0-9]|2[0-8])([-.\/])(\d{4}))|((2)(\.|-|\/)(29)([-.\/])([02468][048]00))|((2)([-.\/])(29)([-.\/])([13579][26]00))|((2)([-.\/])(29)([-.\/])([0-9][0-9][0][48]))|((2)([-.\/])(29)([-.\/])([0-9][0-9][2468][048]))|((2)([-.\/])(29)([-.\/])([0-9][0-9][13579][26])))/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['phone'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/^(\d{3}-\d{3}-\d{4})*$/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['zipcode'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/(^(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?$)/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['sitename'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/^(.){1,200}$/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['password'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/^\S[\S ]{2,98}\S$/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['numeric'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/^(\d|-)?(\d|,)*\.?\d*$/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
this.handlers['email'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
regex=/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
|
||||
return regex.test(value);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
registerEvent: function(target,type,args)
|
||||
{
|
||||
//use a closure to keep scope
|
||||
var self = this;
|
||||
|
||||
if (target.addEventListener) {
|
||||
target.addEventListener(type,onEvent,true);
|
||||
} else if (target.attachEvent) {
|
||||
target.attachEvent('on'+type,onEvent);
|
||||
}
|
||||
|
||||
function onEvent(e) {
|
||||
e = e||window.event;
|
||||
e.element = target;
|
||||
return self["on"+type](e, args);
|
||||
}
|
||||
},
|
||||
|
||||
attachToForm: function(form)
|
||||
{
|
||||
// Iterate through the form object and attach the validate
|
||||
// method to all input fields.
|
||||
for (var i=0;i < form.elements.length; i++) {
|
||||
form.elements[i].onchange = function(){return document.formvalidator.validate(this);}
|
||||
}
|
||||
// Attach the validate method to the onsubmit event for the given form
|
||||
form.onsubmit = function(){return validate(this);}
|
||||
},
|
||||
|
||||
validate: function(target)
|
||||
{
|
||||
// Get the value of the target tag.
|
||||
switch (target.tagName) {
|
||||
case 'INPUT':
|
||||
case 'TEXTAREA':
|
||||
var value = target.value;
|
||||
break;
|
||||
case 'SELECT':
|
||||
var value = target.options[target.selectedIndex].value;
|
||||
break;
|
||||
}
|
||||
// Check to see if the tag is to be validated
|
||||
var pivot = target.className.indexOf('validate');
|
||||
|
||||
// Make sure we are set to go...
|
||||
this.vContinue = true;
|
||||
|
||||
// get all the rules from the input box classname
|
||||
if (pivot != -1) {
|
||||
var rules = target.className.substring(pivot);
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
rules = rules.split(' ');
|
||||
|
||||
/**
|
||||
* Validation rules are as follows
|
||||
* [0] 'validate' -- to validate the field this should always be 'validate'
|
||||
* [1] 'required' -- this means the field is required and should be populated
|
||||
* [2] 'type' -- this represents an additional validation type (ie. email, phone, date)
|
||||
* [3] 'feedbackID' -- this is the id of the element where feedback is sent to.
|
||||
*/
|
||||
var validate = rules[0];
|
||||
var required = rules[1];
|
||||
var type = rules[2];
|
||||
var feedbackID = rules[3];
|
||||
|
||||
// Check for derived feedbackID
|
||||
if (feedbackID) {
|
||||
if (feedbackID.charAt(0) == '@') {
|
||||
feedbackID = target.id + '-' + feedbackID.substring(1);
|
||||
}
|
||||
}
|
||||
|
||||
// The validation state for the target
|
||||
var state;
|
||||
|
||||
//validateRequired() checks if it is required and then sends back feedback
|
||||
state = this.validateRequired (required, value, type);
|
||||
|
||||
/**
|
||||
* If the field is required and blank the fvContinue field will be false
|
||||
* and we shouldn't bother validating the specific type... it will just
|
||||
* cause potential errors.
|
||||
*/
|
||||
if (this.vContinue)
|
||||
{
|
||||
// Check the additional validation types
|
||||
if ((type) && (type != 'none') && (this.handlers[type])) {
|
||||
// Execute the validation handler and return result
|
||||
if (this.handlers[type].exec(value)) {
|
||||
state = true;
|
||||
} else {
|
||||
state = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.handleResponse(state, target, feedbackID);
|
||||
|
||||
// Return validation state
|
||||
return state;
|
||||
},
|
||||
|
||||
validateRequired: function(required, value, type)
|
||||
{
|
||||
//check if required if not, continue validation script
|
||||
if (required == "required") {
|
||||
//if it is rquired and blank then it is an error and continues to be required
|
||||
if (value == "") {
|
||||
this.vContinue = false;
|
||||
return false;
|
||||
}
|
||||
//if its not blank and has no other validation requirements the field passes
|
||||
else if (type == "none") {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
isValid: function(form, element)
|
||||
{
|
||||
var valid = true;
|
||||
for (var i=0;i < form.elements.length; i++) {
|
||||
if ((element == '') || ((element != '') && (form.elements[i].name==element))) {
|
||||
if (this.validate(form.elements[i]) == false) {
|
||||
valid = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return valid;
|
||||
},
|
||||
|
||||
handleResponse: function(state, target, feedback)
|
||||
{
|
||||
// Set the default values for the target and extra objects
|
||||
if (target.origBorder != '') {
|
||||
target.origBorder = target.style.borderColor;
|
||||
}
|
||||
// Set color to red if the object doesn't validate
|
||||
if (state == false) {
|
||||
target.style.borderColor = '#f00';
|
||||
} else {
|
||||
target.style.borderColor = target.origBorder;
|
||||
}
|
||||
|
||||
// Get the extra object
|
||||
var extra = document.getElementById(feedback);
|
||||
// Set extra color to red if the object doesn't validate
|
||||
if (extra) {
|
||||
if (extra.origColor != '') {
|
||||
extra.origColor = extra.style.color;
|
||||
}
|
||||
if (state == false) {
|
||||
extra.style.color = '#f00';
|
||||
} else {
|
||||
extra.style.color = extra.origColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
document.formvalidator = null;
|
||||
Window.onDomReady(function(){
|
||||
document.formvalidator = new JFormValidator();
|
||||
});
|
||||
78
www/-installation-/template/tmpl/configuration.html
Normal file
@ -0,0 +1,78 @@
|
||||
<jtmpl:comment>
|
||||
@version $Id: configuration.html 12308 2009-06-23 04:05:28Z ian $
|
||||
@package Joomla
|
||||
@subpackage Installation
|
||||
@copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
@license GNU/GPL
|
||||
</jtmpl:comment>
|
||||
|
||||
<jtmpl:tmpl name="configuration"><?php
|
||||
class JConfig {
|
||||
/* Site Settings */
|
||||
var $offline = '0';
|
||||
var $offline_message = '{VAR_OFFLINE|addslashes}';
|
||||
var $sitename = '{VAR_SITENAME|addslashes}';
|
||||
var $editor = 'tinymce';
|
||||
var $list_limit = '20';
|
||||
var $legacy = '0';
|
||||
/* Debug Settings */
|
||||
var $debug = '0';
|
||||
var $debug_lang = '0';
|
||||
/* Database Settings */
|
||||
var $dbtype = '{VAR_DBTYPE|addslashes}';
|
||||
var $host = '{VAR_DBHOSTNAME|addslashes}';
|
||||
var $user = '{VAR_DBUSERNAME|addslashes}';
|
||||
var $password = '{VAR_DBPASSWORD|addslashes}';
|
||||
var $db = '{VAR_DBNAME|addslashes}';
|
||||
var $dbprefix = '{VAR_DBPREFIX|addslashes}';
|
||||
/* Server Settings */
|
||||
var $live_site = '';
|
||||
var $secret = '{VAR_SECRET|addslashes}';
|
||||
var $gzip = '0';
|
||||
var $error_reporting = '-1';
|
||||
var $helpurl = '{VAR_HELPURL|addslashes}';
|
||||
var $xmlrpc_server = '0';
|
||||
var $ftp_host = '{VAR_FTPHOST|addslashes}';
|
||||
var $ftp_port = '{VAR_FTPPORT|addslashes}';
|
||||
var $ftp_user = '{VAR_FTPUSER|addslashes}';
|
||||
var $ftp_pass = '{VAR_FTPPASSWORD|addslashes}';
|
||||
var $ftp_root = '{VAR_FTPROOT|addslashes}';
|
||||
var $ftp_enable = '{VAR_FTPENABLE|intval}';
|
||||
var $force_ssl = '0';
|
||||
/* Locale Settings */
|
||||
var $offset = '0';
|
||||
var $offset_user = '0';
|
||||
/* Mail Settings */
|
||||
var $mailer = 'mail';
|
||||
var $mailfrom = '{VAR_ADMINEMAIL|addslashes}';
|
||||
var $fromname = '{VAR_SITENAME|addslashes}';
|
||||
var $sendmail = '/usr/sbin/sendmail';
|
||||
var $smtpauth = '0';
|
||||
var $smtpsecure = 'none';
|
||||
var $smtpport = '25';
|
||||
var $smtpuser = '';
|
||||
var $smtppass = '';
|
||||
var $smtphost = 'localhost';
|
||||
/* Cache Settings */
|
||||
var $caching = '0';
|
||||
var $cachetime = '15';
|
||||
var $cache_handler = 'file';
|
||||
/* Meta Settings */
|
||||
var $MetaDesc = '{VAR_METADESC|addslashes}';
|
||||
var $MetaKeys = '{VAR_METAKEYS|addslashes}';
|
||||
var $MetaTitle = '1';
|
||||
var $MetaAuthor = '1';
|
||||
/* SEO Settings */
|
||||
var $sef = '0';
|
||||
var $sef_rewrite = '0';
|
||||
var $sef_suffix = '0';
|
||||
/* Feed Settings */
|
||||
var $feed_limit = 10;
|
||||
var $feed_email = 'author';
|
||||
var $log_path = '{VAR_LOG_PATH|addslashes}';
|
||||
var $tmp_path = '{VAR_TMP_PATH|addslashes}';
|
||||
/* Session Setting */
|
||||
var $lifetime = '15';
|
||||
var $session_handler = 'database';
|
||||
}
|
||||
?></jtmpl:tmpl>
|
||||
287
www/-installation-/template/tmpl/dbconfig.html
Normal file
@ -0,0 +1,287 @@
|
||||
<jtmpl:comment>
|
||||
@version $Id: dbconfig.html 10871 2008-08-30 07:30:33Z willebil $
|
||||
@package Joomla
|
||||
@subpackage Installation
|
||||
@copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
@license GNU/GPL
|
||||
</jtmpl:comment>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
<!--
|
||||
function validateForm( frm, task ) {
|
||||
var valid = document.formvalidator.isValid(frm);
|
||||
if (valid == false) {
|
||||
return false;
|
||||
}
|
||||
var DBtype = getElementByName( frm, 'vars[DBtype]' );
|
||||
var DBhostname = getElementByName( frm, 'vars[DBhostname]' );
|
||||
var DBname = getElementByName( frm, 'vars[DBname]' );
|
||||
var DBPrefix = getElementByName( frm, 'vars[DBPrefix]' );
|
||||
|
||||
var regex=/^[a-zA-Z]+[a-zA-Z0-9_]*$/;
|
||||
|
||||
if ( DBtype.selectedIndex == 0 ) {
|
||||
alert( '<jtmpl:translate key="validType" escape="yes">Please select the database type</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (DBhostname.value == '') {
|
||||
alert( '<jtmpl:translate key="validHost" escape="yes">Please enter the host name</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (DBname.value == '') {
|
||||
alert( '<jtmpl:translate key="validName" escape="yes">Please enter a database name</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (DBPrefix.value == '') {
|
||||
alert('<jtmpl:translate key="validPrefix" escape="yes">You must enter a MySQL Table Prefix for Joomla to operate correctly</jtmpl:translate>');
|
||||
return;
|
||||
} else if (DBname.value.length > 64) {
|
||||
alert('<jtmpl:translate key="MYSQLDBNAMETOOLONG" escape="yes">The MySQL Database Name must be a maximum of 64 characters</jtmpl:translate>');
|
||||
return;
|
||||
} else if (DBPrefix.value.length > 15) {
|
||||
alert('<jtmpl:translate key="MYSQLPREFIXTOOLONG" escape="yes">The MySQL Table Prefix must be a maximum of 15 characters</jtmpl:translate>');
|
||||
return;
|
||||
} else if (!regex.test(DBPrefix.value)) {
|
||||
alert('<jtmpl:translate key="MYSQLPREFIXINVALIDCHARS" escape="yes">The MySQL Table Prefix must start with a letter, and be followed by only letters, numbers or underscores</jtmpl:translate>');
|
||||
return;
|
||||
} else {
|
||||
submitForm( frm, task );
|
||||
}
|
||||
}
|
||||
|
||||
function JProcess( action ) {
|
||||
|
||||
if ( document.getElementById("vars_dbtype").selectedIndex == 0 ) {
|
||||
alert( '<jtmpl:translate key="validType" escape="yes">Please select the database type</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (document.getElementById("vars_dbhostname").value == '') {
|
||||
alert( '<jtmpl:translate key="validHost" escape="yes">Please enter the host name</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (document.getElementById("vars_dbusername").value == '') {
|
||||
alert( '<jtmpl:translate key="validUser" escape="yes">Please enter a database username</jtmpl:translate>' );
|
||||
return;
|
||||
}
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
|
||||
<form action="index.php" method="post" name="adminForm" id="adminForm" class="form-validate" autocomplete="off">
|
||||
<div id="right">
|
||||
<div id="rightpad">
|
||||
<div id="step">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<div class="far-right">
|
||||
<jtmpl:tmpl name="buttons" type="condition" conditionvar="direction">
|
||||
<jtmpl:sub condition="ltr">
|
||||
<div class="button1-right"><div class="prev"><a onclick="submitForm( adminForm, 'license' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="next"><a onclick="validateForm( adminForm, 'makedb' );" alt="<jtmpl:translate escape="yes">Next</jtmpl:translate>"><jtmpl:translate escape="yes">Next</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
<jtmpl:sub condition="rtl">
|
||||
<div class="button1-right"><div class="prev"><a onclick="validateForm( adminForm, 'makedb' );" alt="<jtmpl:translate escape="yes">Next</jtmpl:translate>"><jtmpl:translate escape="yes">Next</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="next"><a onclick="submitForm( adminForm, 'license' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
</jtmpl:tmpl>
|
||||
</div>
|
||||
<span class="step"><jtmpl:translate>Database Configuration</jtmpl:translate></span>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="installer">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
|
||||
<h2><jtmpl:translate>Connection Settings</jtmpl:translate>:</h2>
|
||||
<div class="install-text">
|
||||
<jtmpl:translate key="tipDatabaseSteps">
|
||||
<p>Setting up Joomla! to run on your server involves 4 simple steps...</p>
|
||||
<p>Please enter the hostname of the server Joomla! is to be installed on.</p>
|
||||
<p>Enter the MySQL username, password and database name you wish to use with Joomla.</p>
|
||||
<p>Enter a prefix to be used by tables for this Joomla! installation. Select how to handle exisitng tables from a previous installation.</p>
|
||||
<p>Install the samples unless you are experienced want to start with a virtually empty site.</p>
|
||||
</jtmpl:translate>
|
||||
</div>
|
||||
<div class="install-body">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<h3 class="title-smenu" title="<jtmpl:translate>Basic</jtmpl:translate>"><jtmpl:translate>Basic Settings</jtmpl:translate></h3>
|
||||
<div class="section-smenu">
|
||||
<table class="content2">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbtype">
|
||||
<jtmpl:translate>Database Type</jtmpl:translate>
|
||||
</label>
|
||||
<br />
|
||||
<select id="vars_dbtype" name="vars[DBtype]" class="inputbox" size="1">
|
||||
<option value=""><jtmpl:translate>Select Type</jtmpl:translate></option>
|
||||
<jtmpl:tmpl name="dbtype-options">
|
||||
<option value="{TEXT}" {SELECTED}>{TEXT}</option>
|
||||
</jtmpl:tmpl>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipType">This is probably 'mysql'</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbhostname">
|
||||
<span id="dbhostnamemsg"><jtmpl:translate>Host Name</jtmpl:translate></span>
|
||||
</label>
|
||||
<br />
|
||||
<input id="vars_dbhostname" class="inputbox validate required none dbhostnamemsg" type="text" name="vars[DBhostname]" value="{VAR_DBHOSTNAME}" />
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipHost">This is usually 'localhost'</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbusername">
|
||||
<span id="dbusernamemsg"><jtmpl:translate>User Name</jtmpl:translate></span>
|
||||
</label>
|
||||
<br />
|
||||
<input id="vars_dbusername" class="inputbox validate required none dbusernamemsg" type="text" name="vars[DBuserName]" value="{VAR_DBUSERNAME}" />
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipUser">Either something as 'root' or a username given by the hoster</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbpassword">
|
||||
<jtmpl:translate>Password</jtmpl:translate>
|
||||
</label>
|
||||
<br />
|
||||
<input id="vars_dbpassword" class="inputbox" type="password" name="vars[DBpassword]" value="{VAR_DBPASSWORD}" />
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipPassword">For site security using a password for the mysql account is mandatory</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbname">
|
||||
<span id="dbnamemsg"><jtmpl:translate>Database Name</jtmpl:translate></span>
|
||||
</label>
|
||||
<br />
|
||||
<input id="vars_dbname" class="inputbox validate required none dbnamemsg" type="text" name="vars[DBname]" value="{VAR_DBNAME}" />
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipDatabase">Some hosts allow only a certain DB name per site. Use table prefix in this case for distinct Joomla! sites.</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<br /><br />
|
||||
</div>
|
||||
<h3 class="title-smenu moofx-toggler" title="<jtmpl:translate>Advanced</jtmpl:translate>"><jtmpl:translate>Advanced settings</jtmpl:translate></h3>
|
||||
<div class="section-smenu moofx-slider">
|
||||
<table class="content2">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input id="vars_dbolddel" type="radio" name="vars[DBOld]" value="rm" />
|
||||
</td>
|
||||
<td>
|
||||
<label for="vars_dbolddel">
|
||||
<jtmpl:translate>Drop Existing Tables</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input id="vars_dboldbackup" type="radio" name="vars[DBOld]" value="bu" checked="checked"/>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<label for="vars_dboldbackup">
|
||||
<jtmpl:translate>Backup Old Tables</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipBackup">Any existing backup tables from former Joomla! installations will be replaced</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<label for="vars_dbprefix">
|
||||
<jtmpl:translate>Table Prefix</jtmpl:translate>
|
||||
</label>
|
||||
<br />
|
||||
<input id="vars_dbprefix" class="inputbox" type="text" name="vars[DBPrefix]" value="{VAR_DBPREFIX}" />
|
||||
</td>
|
||||
<td>
|
||||
<em>
|
||||
<jtmpl:translate key="tipPrefix">Dont use 'old_' since this is used for backup tables</jtmpl:translate>
|
||||
</em>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="clr"></div>
|
||||
<input type="hidden" id="vars_lang" name="vars[lang]" value="{VAR_LANG}" />
|
||||
<input type="hidden" name="task" value="" />
|
||||
<input type="hidden" name="vars[ftpEnable]" value="0" />
|
||||
</form>
|
||||
|
||||
|
||||
88
www/-installation-/template/tmpl/error.html
Normal file
@ -0,0 +1,88 @@
|
||||
<jtmpl:comment>
|
||||
@version $Id: error.html 9765 2007-12-30 08:21:02Z ircmaxell $
|
||||
@package Joomla
|
||||
@subpackage Installation
|
||||
@copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
@license GNU/GPL
|
||||
</jtmpl:comment>
|
||||
|
||||
<form action="index.php" method="post" name="adminForm">
|
||||
<div id="right">
|
||||
<div id="rightpad">
|
||||
<div id="step">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<div class="far-right">
|
||||
<jtmpl:tmpl name="buttons" type="condition" conditionvar="direction">
|
||||
<jtmpl:sub condition="ltr">
|
||||
<div class="button1-right"><div class="prev"><a onclick="submitForm( adminForm, '{BACK}' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
<jtmpl:sub condition="rtl">
|
||||
<div class="button1-left"><div class="next"><a onclick="submitForm( adminForm, '{BACK}' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
</jtmpl:tmpl>
|
||||
</div>
|
||||
<span class="step"><jtmpl:translate>Error</jtmpl:translate></span>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="installer">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<h2><jtmpl:translate>An error has occurred</jtmpl:translate>:</h2>
|
||||
<div class="install-text">
|
||||
<p>
|
||||
<jtmpl:tmpl name="messages">
|
||||
{MESSAGE}
|
||||
</jtmpl:tmpl>
|
||||
</p>
|
||||
</div>
|
||||
<jtmpl:tmpl name="xmessages" type="simplecondition" requiredvars="xmessage">
|
||||
<div class="install-form">
|
||||
<fieldset class="form-block">
|
||||
<textarea rows="10" cols="50">{XMESSAGE}</textarea>
|
||||
</fieldset>
|
||||
</div>
|
||||
</jtmpl:tmpl>
|
||||
<div class="clr">
|
||||
</div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr">
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr">
|
||||
</div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr">
|
||||
</div>
|
||||
<input type="hidden" name="task" value="" />
|
||||
</form>
|
||||
153
www/-installation-/template/tmpl/finish.html
Normal file
@ -0,0 +1,153 @@
|
||||
<jtmpl:comment>
|
||||
@version $Id: finish.html 11405 2009-01-09 16:30:05Z willebil $
|
||||
@package Joomla
|
||||
@subpackage Installation
|
||||
@copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
@license GNU/GPL
|
||||
</jtmpl:comment>
|
||||
|
||||
<form action="index.php" method="post" name="adminForm" autocomplete="off">
|
||||
|
||||
<div id="right">
|
||||
<div id="rightpad">
|
||||
<div id="step">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<div class="far-right">
|
||||
<jtmpl:tmpl name="buttons" type="condition" conditionvar="direction" varscope="body">
|
||||
<jtmpl:sub condition="ltr">
|
||||
<div class="button1-left"><div class="site"><a onclick="window.location.href='{VAR_SITEURL}';" alt="<jtmpl:translate escape="yes">Site</jtmpl:translate>"><jtmpl:translate escape="yes">Site</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="admin"><a onclick="window.location.href='{VAR_ADMINURL}';" alt="<jtmpl:translate escape="yes">Admin</jtmpl:translate>"><jtmpl:translate escape="yes">Admin</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
<jtmpl:sub condition="rtl">
|
||||
<div class="button1-left"><div class="admin"><a onclick="window.location.href='{VAR_ADMINURL}';" alt="<jtmpl:translate escape="yes">Admin</jtmpl:translate>"><jtmpl:translate escape="yes">Admin</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="site"><a onclick="window.location.href='{VAR_SITEURL}';" alt="<jtmpl:translate escape="yes">Site</jtmpl:translate>"><jtmpl:translate escape="yes">Site</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
</jtmpl:tmpl>
|
||||
</div>
|
||||
<span class="step"><jtmpl:translate>Finish</jtmpl:translate></span>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="installer">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
|
||||
<h2><jtmpl:translate key="congratulations">Congratulations! Joomla! is installed.</jtmpl:translate></h2>
|
||||
<div class="install-text">
|
||||
<jtmpl:translate key="finishButtons">
|
||||
<p>
|
||||
Click the "Site" button to start Joomla! site or "Admin" to take you to administrator login.
|
||||
</p>
|
||||
</jtmpl:translate>
|
||||
<jtmpl:translate key="languageinfo">
|
||||
<p>
|
||||
On the Joomla! help page for languages you will find an easy step by step help to install your own languagepack in Joomla!<br />You will find a list there with links to the available languagepacks.<br />Click the button on the right to open the helpsite in a new window.
|
||||
</p>
|
||||
</jtmpl:translate>
|
||||
</div>
|
||||
<div class="install-body">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<fieldset>
|
||||
<table class="final-table">
|
||||
<tr>
|
||||
<td class="error" align="center">
|
||||
<jtmpl:translate key="removeInstallation">PLEASE REMEMBER TO COMPLETELY REMOVE THE INSTALLATION DIRECTORY</jtmpl:translate>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<h3>
|
||||
<jtmpl:translate>Administration Login Details</jtmpl:translate>
|
||||
</h3>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" class="notice">
|
||||
<jtmpl:translate>Username</jtmpl:translate>: {VAR_ADMINLOGIN}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" class="notice">
|
||||
<div id="cpanel">
|
||||
<div>
|
||||
<div class="icon">
|
||||
<a href="http://community.joomla.org/translations.html" target="_blank">
|
||||
<br />
|
||||
<b><jtmpl:translate key="languagebuttonlineone">Joomla! in your own language?</jtmpl:translate></b>
|
||||
<br />
|
||||
<jtmpl:translate key="languagebuttonlinetwo">Visit the Joomla! help site for more information and downloads.</jtmpl:translate>
|
||||
<br /><br />
|
||||
</a></td>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<jtmpl:tmpl name="configuration-error" type="simplecondition" requiredvars="buffer">
|
||||
<tr>
|
||||
<td class="small">
|
||||
<jtmpl:translate key="confProblem">
|
||||
Your configuration file or directory is not writable,
|
||||
or there was a problem creating the configuration file. You'll have to
|
||||
upload the following code by hand. Click in the textarea to highlight
|
||||
all of the code.
|
||||
</jtmpl:translate>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td align="center">
|
||||
<textarea rows="5" cols="60" name="configcode" onclick="this.form.configcode.focus();this.form.configcode.select();" >{BUFFER}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</jtmpl:tmpl>
|
||||
</table>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="clr"></div>
|
||||
|
||||
<input type="hidden" name="task" value="" />
|
||||
</form>
|
||||
258
www/-installation-/template/tmpl/ftpconfig.html
Normal file
@ -0,0 +1,258 @@
|
||||
<jtmpl:comment>
|
||||
@version $Id: ftpconfig.html 10871 2008-08-30 07:30:33Z willebil $
|
||||
@package Joomla
|
||||
@subpackage Installation
|
||||
@copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
|
||||
@license GNU/GPL
|
||||
</jtmpl:comment>
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
<!--
|
||||
|
||||
Window.onDomReady(function(){
|
||||
document.formvalidator.handlers['isftp'] = { enabled : true,
|
||||
exec : function (value) {
|
||||
if (document.getElementById('ftpenable').checked == true) {
|
||||
if (value == '') {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function validateForm( frm, task ) {
|
||||
var valid = document.formvalidator.isValid(frm);
|
||||
if (valid == false) {
|
||||
return false;
|
||||
}
|
||||
|
||||
var ftpEnable = document.getElementById("ftpenable");
|
||||
var ftpRoot = document.getElementById("ftproot");
|
||||
|
||||
if (ftpEnable.checked == false) {
|
||||
submitForm( frm, task );
|
||||
} else if (ftpRoot.value == '') {
|
||||
alert( '<jtmpl:translate key="warnFtpRoot" escape="yes">Please enter an FTP Root or use\nthe autofind root button.</jtmpl:translate>' );
|
||||
return;
|
||||
} else {
|
||||
submitForm( frm, task );
|
||||
}
|
||||
}
|
||||
|
||||
function doFTPVerify() {
|
||||
xajax_FTPVerify(xajax.getFormValues('adminForm'));
|
||||
}
|
||||
|
||||
function JProcess() {
|
||||
|
||||
if ( document.getElementById("ftphost").value == '' ) {
|
||||
alert( '<jtmpl:translate key="validFtpHost" escape="yes">Please enter a correct FTP host</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (document.getElementById("ftpuser").value == '') {
|
||||
alert( '<jtmpl:translate key="validFtpUser" escape="yes">Please enter a username</jtmpl:translate>' );
|
||||
return;
|
||||
} else if (document.getElementById("ftppass").value == '') {
|
||||
alert( '<jtmpl:translate key="validFtpPass" escape="yes">Please enter a FTP password</jtmpl:translate>' );
|
||||
return;
|
||||
} else {
|
||||
xajax_getFtpRoot(xajax.getFormValues('adminForm'));
|
||||
}
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
<form action="index.php" method="post" name="adminForm" id="adminForm" class="form-validate" autocomplete="off">
|
||||
|
||||
<div id="right">
|
||||
<div id="rightpad">
|
||||
<div id="step">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
<div class="far-right">
|
||||
<jtmpl:tmpl name="buttons" type="condition" conditionvar="direction">
|
||||
<jtmpl:sub condition="ltr">
|
||||
<div class="button1-right"><div class="prev"><a onclick="submitForm( adminForm, 'dbconfig' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="next"><a onclick="validateForm( adminForm, 'mainconfig' );" alt="<jtmpl:translate escape="yes">Next</jtmpl:translate>"><jtmpl:translate escape="yes">Next</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
<jtmpl:sub condition="rtl">
|
||||
<div class="button1-right"><div class="prev"><a onclick="validateForm( adminForm, 'mainconfig' );" alt="<jtmpl:translate escape="yes">Next</jtmpl:translate>"><jtmpl:translate escape="yes">Next</jtmpl:translate></a></div></div>
|
||||
<div class="button1-left"><div class="next"><a onclick="submitForm( adminForm, 'dbconfig' );" alt="<jtmpl:translate escape="yes">Previous</jtmpl:translate>"><jtmpl:translate escape="yes">Previous</jtmpl:translate></a></div></div>
|
||||
</jtmpl:sub>
|
||||
</jtmpl:tmpl>
|
||||
</div>
|
||||
<span class="step"><jtmpl:translate>FTP Configuration</jtmpl:translate></span>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="installer">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
|
||||
<h2><jtmpl:translate>FTP Configuration</jtmpl:translate>:</h2>
|
||||
<div class="install-text">
|
||||
<jtmpl:translate key="tipFtpConfSteps">
|
||||
<p>Due to filesystem permission restrictions and PHP Safe Mode restrictions.
|
||||
For all users to utilize the Joomla! installers an FTP layer exists to handle
|
||||
filesystem manipulation.
|
||||
<br />
|
||||
<br />
|
||||
Enter an FTP username and password with access to the Joomla! root directory,
|
||||
this will be the FTP account that handles all filesystem operations when Joomla!
|
||||
requires FTP access to complete a task.
|
||||
<br />
|
||||
<br />
|
||||
For security reasons, it is best if a separate FTP user account is created with
|
||||
access only to the Joomla! installation.</p>
|
||||
</jtmpl:translate>
|
||||
</div>
|
||||
<div class="install-body">
|
||||
<div class="t">
|
||||
<div class="t">
|
||||
<div class="t"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="m">
|
||||
|
||||
<h3 class="title-smenu" title="<jtmpl:translate>Basic</jtmpl:translate>"><jtmpl:translate>Basic Settings</jtmpl:translate></h3>
|
||||
<div class="section-smenu">
|
||||
<table class="content2">
|
||||
<tr>
|
||||
<td width="100">
|
||||
<input id="ftpenable" type="radio" name="vars[ftpEnable]" value="1" />
|
||||
<label for="vars_ftpenable">
|
||||
<jtmpl:translate key="YES">Yes</jtmpl:translate>
|
||||
</label>
|
||||
<br />
|
||||
<input id="ftpdisable" type="radio" name="vars[ftpEnable]" value="0" checked="checked" />
|
||||
<label for="vars_ftpdisable">
|
||||
<jtmpl:translate key="NO">No</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
<td align="justify">
|
||||
<jtmpl:translate key="ENABLEFTPDESC">Enable FTP filesystem layer</jtmpl:translate>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="100">
|
||||
<label for="ftpuser">
|
||||
<span id="ftpusermsg"><jtmpl:translate>FTP user</jtmpl:translate></span>
|
||||
</label>
|
||||
</td>
|
||||
<td align="center">
|
||||
<input class="inputbox validate notrequired isftp ftpusermsg" type="text" id="ftpuser" name="vars[ftpUser]" value="{VAR_FTPUSER}" size="30"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="ftppass">
|
||||
<span id="ftppassmsg"><jtmpl:translate>FTP password</jtmpl:translate></span>
|
||||
</label>
|
||||
</td>
|
||||
<td align="center">
|
||||
<input class="inputbox validate notrequired isftp ftppassmsg" type="password" id="ftppass" name="vars[ftpPassword]" value="{VAR_FTPPASSWORD}" size="30"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="rootPath">
|
||||
<td>
|
||||
<label for="ftproot">
|
||||
<span id="ftprootmsg"><jtmpl:translate>FTP Root Path</jtmpl:translate></span>
|
||||
</label>
|
||||
</td>
|
||||
<td align="center">
|
||||
<input class="inputbox validate notrequired isftp ftprootmsg" id="ftproot" type="text" name="vars[ftpRoot]" value="{VAR_FTPROOT}" size="30"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<input type="button" id="findbutton" class="button" value="<jtmpl:translate>Autofind FTP Path</jtmpl:translate>" onclick="JProcess();" />
|
||||
<input type="button" id="verifybutton" class="button" value="<jtmpl:translate>Verify FTP Settings</jtmpl:translate>" onclick="doFTPVerify();" />
|
||||
<br /><br />
|
||||
</div>
|
||||
|
||||
<h3 class="title-smenu moofx-toggler" title="<jtmpl:translate>Advanced</jtmpl:translate>"><jtmpl:translate>Advanced settings</jtmpl:translate></h3>
|
||||
<div class="section-smenu moofx-slider">
|
||||
<table class="content2">
|
||||
<tr id="host">
|
||||
<td width="100">
|
||||
<label for="ftphost">
|
||||
<jtmpl:translate>FTP host</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
<td align="center">
|
||||
<input class="inputbox" type="text" id="ftphost" name="vars[ftpHost]" value="{VAR_FTPHOST}" size="30"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="port">
|
||||
<td width="100">
|
||||
<label for="ftpport">
|
||||
<jtmpl:translate>FTP port</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
<td align="center">
|
||||
<input class="inputbox" type="text" id="ftpport" name="vars[ftpPort]" value="{VAR_FTPPORT}" size="30"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="100">
|
||||
<label for="ftpsavepass">
|
||||
<jtmpl:translate>Save FTP Password</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
<td align="justify">
|
||||
<input id="ftpsavepass" type="radio" name="vars[ftpSavePass]" value="1" />
|
||||
<label for="ftpsavepass">
|
||||
<jtmpl:translate key="YES">Yes</jtmpl:translate>
|
||||
</label>
|
||||
<br />
|
||||
<input id="ftpnosavepass" type="radio" name="vars[ftpSavePass]" value="0" checked="checked" />
|
||||
<label for="ftpnosavepass">
|
||||
<jtmpl:translate key="NO">No</jtmpl:translate>
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
</div>
|
||||
<div class="b">
|
||||
<div class="b">
|
||||
<div class="b"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clr"></div>
|
||||
|
||||
<input type="hidden" name="task" value="" />
|
||||
<input type="hidden" name="lang" value="{LANG}" />
|
||||
</form>
|
||||
|
||||
<script type="text/javascript">
|
||||
//Element.cleanWhitespace('content');
|
||||
//init();
|
||||
</script>
|
||||
1
www/-installation-/template/tmpl/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||