Updating from 1.9.x

1.10.x
Julio Montoya 12 years ago
parent 99305282d6
commit 92ec81ec07
  1. 147
      main/wiki/css/default.css
  2. 265
      main/wiki/diff.inc.php
  3. 1909
      main/wiki/index.php
  4. 3538
      main/wiki/wiki.inc.php

@ -1,51 +1,46 @@
/* /* WIKI STYLES */
==============================================================================
WIKI STYLES
==============================================================================
*/
.wikiTitle h1{ .wikiTitle h1 {
color: Black; color: Black;
background: none; background: none;
font-size: 200%; font-size: 200%;
font-weight: bold; font-weight: bold;
/*font-weight: normal;*/ /*font-weight: normal;*/
border-bottom: 2px solid #aaaaaa; border-bottom: 2px solid #aaaaaa;
} }
.wiki2xhtml a.wikiEdit{ .wiki2xhtml a.wikiEdit{
color: #0000FF; color: #0000FF;
} }
.diff{ .diff{
font-family: monospace; font-family: monospace;
padding: 5px; padding: 5px;
margin: 5px; margin: 5px;
border:solid 2px #aaaaaa; border:solid 2px #aaaaaa;
} }
.diffEqual{ .diffEqual{
background-color: #FFFFFF; background-color: #FFFFFF;
} }
.diffMoved{ .diffMoved{
background-color: #FFFFAA; background-color: #FFFFAA;
} }
.diffAdded{ .diffAdded{
background-color: #CCFFCC; background-color: #CCFFCC;
} }
.diffDeleted{ .diffDeleted{
background-color: #FFAAAA; background-color: #FFAAAA;
} }
.diffAddedTex{ .diffAddedTex{
background-color: #CCFFCC; background-color: #CCFFCC;
text-decoration:underline; text-decoration:underline;
} }
.diffDeletedTex{ .diffDeletedTex{
background-color: #FFAAAA; background-color: #FFAAAA;
text-decoration:line-through; text-decoration:line-through;
} }
#wikititle { #wikititle {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 100%; font-size: 100%;
font-weight: bold; font-weight: bold;
background-color: #EFEFEF; background-color: #EFEFEF;
@ -55,17 +50,16 @@
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
height: auto!important; height: auto!important;
min-height:20px; min-height:20px;
} }
#wikititle input { #wikititle input {
border: 1px solid #333; border: 1px solid #333;
padding-left: 3px; padding-left: 3px;
} }
#wikicontent { #wikicontent {
padding-top:5px; padding-top:5px;
min-height:300px; }
}
#menuwiki { #menuwiki {
float:left; float:left;
border: 2px solid #cccccc; border: 2px solid #cccccc;
margin-right: 10px; margin-right: 10px;
@ -74,98 +68,96 @@
width:74px; width:74px;
height:30px; height:30px;
overflow:hidden; overflow:hidden;
} }
#menuwiki li{ #menuwiki li{
list-style-type: square; list-style-type: square;
} }
#mainwiki { #mainwiki {
border-left: 1px solid #cccccc; }
padding-left:10px;
}
#wikifooter { #wikifooter {
background-color: #EFEFEF; background-color: #EFEFEF;
border-top: 1px solid #cccccc; border-top: 1px solid #cccccc;
border-bottom: 1px solid #cccccc; border-bottom: 1px solid #cccccc;
border-left: 1px solid #cccccc; border-left: 1px solid #cccccc;
border-right: 1px solid #cccccc; border-right: 1px solid #cccccc;
} }
.fwiki1{ .fwiki1{
font-size:larger; font-size:larger;
font-style:italic; font-style:italic;
font-weight:bold; font-weight:bold;
background-color:#DAFFD9; background-color:#DAFFD9;
} }
.fwiki2{ .fwiki2{
font-size:smaller; font-size:smaller;
background-color:#ffffff; background-color:#ffffff;
} }
.message { .message {
color: #cccccc; color: #cccccc;
} }
.wiki_warning{ .wiki_warning{
color: #FF0000; color: #FF0000;
font-weight:bold; font-weight:bold;
} }
a.new_wiki_link{ a.new_wiki_link{
color: #FF0000; color: #FF0000;
border-bottom: 1px dotted #cccccc; border-bottom: 1px dotted #cccccc;
} }
a.wiki_link{ a.wiki_link{
border-bottom: 1px dotted #cccccc; border-bottom: 1px dotted #cccccc;
} }
a.wiki_link_ext{ a.wiki_link_ext{
background: url(ext.png) center right no-repeat; padding-right: 14px; } background: url(ext.png) center right no-repeat; padding-right: 14px; }
a.wiki_mail_link{ a.wiki_mail_link{
background: url(email.gif) center right no-repeat; padding-right: 18px; } background: url(email.gif) center right no-repeat; padding-right: 18px; }
a.wiki_news_link{ a.wiki_news_link{
background: url(news.png) center right no-repeat; padding-right: 18px; } background: url(news.png) center right no-repeat; padding-right: 18px; }
a.wiki_ftp_link{ a.wiki_ftp_link{
background: url(ftp.gif) center right no-repeat; padding-right: 18px; } background: url(ftp.gif) center right no-repeat; padding-right: 18px; }
a.wiki_irc_link{ a.wiki_irc_link{
background: url(irc.gif) center right no-repeat; padding-right: 18px; } background: url(irc.gif) center right no-repeat; padding-right: 18px; }
#main_navigation{ #main_navigation{
height: 20px; height: 20px;
margin: 0; margin: 0;
padding-left: 10px; padding-left: 10px;
background-color:#cccccc; background-color:#cccccc;
} }
#tabnav{ #tabnav{
height: 20px; height: 20px;
margin: 0; margin: 0;
padding-left: 10px; padding-left: 10px;
} }
#tabnav_content { #tabnav_content {
margin: 0; margin: 0;
padding-left: 10px; padding-left: 10px;
padding-right: 10px; padding-right: 10px;
padding-bottom: 10px; padding-bottom: 10px;
padding-top: 4px; padding-top: 4px;
border: 1px solid #ccc; border: 1px solid #ccc;
} }
#tabnav li { #tabnav li {
margin: 0; margin: 0;
padding: 0; padding: 0;
display: inline; display: inline;
list-style-type: none; list-style-type: none;
} }
#tabnav a:link, #tabnav a:visited { #tabnav a:link, #tabnav a:visited {
float: left; float: left;
background: #fff; background: #fff;
font-size: 10px; font-size: 10px;
@ -177,32 +169,29 @@
border-bottom: 1px solid #f3f3f3; border-bottom: 1px solid #f3f3f3;
text-decoration: none; text-decoration: none;
color: #666; color: #666;
} }
#tabnav a:link.active, #tabnav a:visited.active #tabnav a:link.active, #tabnav a:visited.active {
{
border-bottom: 2px solid #f3f3f3; border-bottom: 2px solid #f3f3f3;
background: #f3f3f3; background: #f3f3f3;
color: #000; color: #000;
} }
#tabnav a:link.right, #tabnav a:visited.right #tabnav a:link.right, #tabnav a:visited.right
{ {
border-bottom: 1px solid #f3f3f3; border-bottom: 1px solid #f3f3f3;
background: #f3f3f3; background: #f3f3f3;
color: #666; color: #666;
margin-left: 100px; margin-left: 100px;
} }
#tabnav a:link.rightactive, #tabnav a:visited.rightactive #tabnav a:link.rightactive, #tabnav a:visited.rightactive {
{
border-bottom: 1px solid #fff; border-bottom: 1px solid #fff;
background: #fff; background: #fff;
color: #000; color: #000;
margin-left: 170px; margin-left: 170px;
} }
#tabnav a:hover #tabnav a:hover {
{
background: #fff; background: #fff;
} }

@ -1,6 +1,5 @@
<?php // $Id: lib.diff.php,v 1.12 2005/11/18 20:25:11 zefredz Exp $ <?php
// vim: expandtab sw=4 ts=4 sts=4: /**
/**
* CLAROLINE * CLAROLINE
* *
* @version 1.7 $Revision: 1.12 $ * @version 1.7 $Revision: 1.12 $
@ -16,15 +15,15 @@
* *
* @package Wiki * @package Wiki
*/ */
/** /**
* Code * Code
*/ */
define( "DIFF_EQUAL", "=" ); define("DIFF_EQUAL", "=");
define( "DIFF_ADDED", "+" ); define("DIFF_ADDED", "+");
define( "DIFF_DELETED", "-" ); define("DIFF_DELETED", "-");
define( "DIFF_MOVED", "M" ); define("DIFF_MOVED", "M");
/** /**
* Get difference between two strings * Get difference between two strings
* @param string old first string * @param string old first string
* @param string new second string * @param string new second string
@ -34,32 +33,33 @@
* (default 'format_line') * (default 'format_line')
* @return string formated diff output * @return string formated diff output
*/ */
function diff( $old, $new, $show_equals = false, $format_line_function = 'format_line' ) function diff(
{ $old,
$oldArr = str_split_on_new_line( $old ); $new,
$newArr = str_split_on_new_line( $new ); $show_equals = false,
$format_line_function = 'format_line'
) {
$oldArr = str_split_on_new_line($old);
$newArr = str_split_on_new_line($new);
$oldCount = count ( $oldArr ); $oldCount = count($oldArr);
$newCount = count ( $newArr ); $newCount = count($newArr);
$max = max( $oldCount, $newCount ); $max = max($oldCount, $newCount);
//get added and deleted lines //get added and deleted lines
$deleted = array_diff_assoc( $oldArr, $newArr ); $deleted = array_diff_assoc($oldArr, $newArr);
$added = array_diff_assoc( $newArr, $oldArr ); $added = array_diff_assoc($newArr, $oldArr);
$moved = array(); $moved = array();
foreach ( $added as $key => $candidate ) foreach ($added as $key => $candidate) {
{ foreach ($deleted as $index => $content) {
foreach ( $deleted as $index => $content ) if ($candidate == $content) {
{
if ( $candidate == $content )
{
$moved[$key] = $candidate; $moved[$key] = $candidate;
unset( $added[$key] ); unset($added[$key]);
unset( $deleted[$index] ); unset($deleted[$index]);
break; break;
} }
} }
@ -67,76 +67,57 @@
$output = ''; $output = '';
for ( $i = 0; $i < $max; $i++ ) for ($i = 0; $i < $max; $i++) {
{
// line changed // line changed
if ( isset ( $deleted[$i] ) && isset( $added[$i] ) ) if (isset ($deleted[$i]) && isset($added[$i])) {
{ $output .= $format_line_function($i, DIFF_DELETED, $deleted[$i]);
$output .= $format_line_function( $i, DIFF_DELETED, $deleted[$i] ); $output .= $format_line_function($i, DIFF_ADDED, $added[$i]);
$output .= $format_line_function( $i, DIFF_ADDED, $added[$i] );
} } // line deleted
// line deleted elseif (isset ($deleted[$i]) && !isset ($added[$i])) {
elseif ( isset ( $deleted[$i] ) && ! isset ( $added[$i] ) ) $output .= $format_line_function($i, DIFF_DELETED, $deleted[$i]);
{
$output .= $format_line_function( $i, DIFF_DELETED, $deleted[$i] );
} } // line added
// line added elseif (isset ($added[$i]) && !isset ($deleted[$i])) {
elseif ( isset ( $added[$i] ) && ! isset ( $deleted[$i] ) ) $output .= $format_line_function($i, DIFF_ADDED, $added[$i]);
{
$output .= $format_line_function( $i, DIFF_ADDED, $added[$i] );
} } // line moved
// line moved elseif (isset ($moved[$i])) {
elseif ( isset ( $moved[$i] ) ) $output .= $format_line_function($i, DIFF_MOVED, $newArr[$i]);
{
$output .= $format_line_function( $i, DIFF_MOVED, $newArr[$i] );
} } // line unchanged
// line unchanged elseif ($show_equals) {
elseif ( $show_equals ) $output .= $format_line_function($i, DIFF_EQUAL, $newArr[$i]);
{
$output .= $format_line_function( $i, DIFF_EQUAL, $newArr[$i] );
} } else {
else
{
// skip // skip
} }
} }
return $output; return $output;
} }
/** /**
* Split strings on new line * Split strings on new line
*/ */
function str_split_on_new_line( $str ) function str_split_on_new_line($str)
{ {
$content = array(); $content = array();
if ( api_strpos( $str, "\r\n" ) !== false ) if (api_strpos($str, "\r\n") !== false) {
{ $content = explode("\r\n", $str);
$content = explode("\r\n", $str ); } elseif (api_strpos($str, "\n") !== false) {
} $content = explode("\n", $str);
elseif ( api_strpos( $str, "\n" ) !== false ) } elseif (api_strpos($str, "\r") !== false) {
{ $content = explode("\r", $str);
$content = explode( "\n", $str ); } else {
}
elseif ( api_strpos( $str, "\r" ) !== false )
{
$content = explode( "\r", $str );
}
else
{
$content[] = $str; $content[] = $str;
} }
return $content; return $content;
} }
/** /**
* Default and prototype format line function * Default and prototype format line function
* @param int line line number * @param int line line number
* @param mixed type line type, must be one of the following : * @param mixed type line type, must be one of the following :
@ -145,154 +126,62 @@
* @param boolean skip_empty skip empty lines (default false) * @param boolean skip_empty skip empty lines (default false)
* @return string formated diff line * @return string formated diff line
*/ */
function format_line( $line, $type, $value, $skip_empty = false ) function format_line($line, $type, $value, $skip_empty = false)
{ {
if ( trim( $value ) == "" && $skip_empty ) if (trim($value) == "" && $skip_empty) {
{
return ""; return "";
} } elseif (trim($value) == "") {
elseif ( trim( $value ) == "" )
{
$value = '&nbsp;'; $value = '&nbsp;';
} }
switch ( $type ) switch ($type) {
{
case DIFF_EQUAL: case DIFF_EQUAL:
{
// return $line. ' : ' . ' = <span class="diffEqual" >' . $value . '</span><br />' . "\n" ; // return $line. ' : ' . ' = <span class="diffEqual" >' . $value . '</span><br />' . "\n" ;
return '<span class="diffEqual" >' . $value . '</span><br />' . "\n" ; //juan carlos muestra solo color return '<span class="diffEqual" >' . $value . '</span><br />' . "\n"; //juan carlos muestra solo color
break; break;
}
case DIFF_MOVED: case DIFF_MOVED:
{
//return $line. ' : ' . ' M <span class="diffMoved" >' . $value . '</span><br />' . "\n" ; //juan carlos ra<EFBFBD>a la sustitye la inverior //return $line. ' : ' . ' M <span class="diffMoved" >' . $value . '</span><br />' . "\n" ; //juan carlos ra<EFBFBD>a la sustitye la inverior
return '<span class="diffMoved" >' . $value . '</span><br />' . "\n" ; //juan carlos muestra solo color return '<span class="diffMoved" >' . $value . '</span><br />' . "\n"; //juan carlos muestra solo color
break; break;
}
case DIFF_ADDED: case DIFF_ADDED:
{
//return $line . ' : ' . ' + <span class="diffAdded" >' . $value . '</span><br />' . "\n" ; //return $line . ' : ' . ' + <span class="diffAdded" >' . $value . '</span><br />' . "\n" ;
return '<span class="diffAdded" >' . $value . '</span><br />' . "\n" ; //juan carlos muestra solo color return '<span class="diffAdded" >' . $value . '</span><br />' . "\n"; //juan carlos muestra solo color
break; break;
}
case DIFF_DELETED: case DIFF_DELETED:
{
//return $line . ' : ' . ' - <span class="diffDeleted" >' . $value . '</span><br />' . "\n" ; //juan carlos ra<EFBFBD>a la sustitye la inverior //return $line . ' : ' . ' - <span class="diffDeleted" >' . $value . '</span><br />' . "\n" ; //juan carlos ra<EFBFBD>a la sustitye la inverior
return '<span class="diffDeleted" >' . $value . '</span><br />' . "\n" ; //juan carlos muestra solo color return '<span class="diffDeleted" >' . $value . '</span><br />' . "\n"; //juan carlos muestra solo color
break; break;
} }
} }
}
/** /**
* Table format line function * Table format line function
* @see format_line * @see format_line
*/ */
function format_table_line( $line, $type, $value, $skip_empty = false ) function format_table_line($line, $type, $value, $skip_empty = false)
{ {
if ( trim( $value ) == "" && $skip_empty ) if (trim($value) == "" && $skip_empty) {
{
return ""; return "";
} } elseif (trim($value) == "") {
elseif ( trim( $value ) == "" )
{
$value = '&nbsp;'; $value = '&nbsp;';
} }
switch ( $type ) switch ($type) {
{
case DIFF_EQUAL: case DIFF_EQUAL:
{
//return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;=</td><td><span class="diffEqual" >' . $value . '</span></td></tr>' . "\n"; //juan carlos comentado //return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;=</td><td><span class="diffEqual" >' . $value . '</span></td></tr>' . "\n"; //juan carlos comentado
return '<tr><td></td><td bgcolor="#FFFFFF">'. $value . '</td></tr>' . "\n" ; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente. return '<tr><td></td><td bgcolor="#FFFFFF">' . $value . '</td></tr>' . "\n"; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente.
break; break;
}
case DIFF_MOVED: case DIFF_MOVED:
{
// return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;M</td><td><span class="diffMoved" >' . $value . '</span></td></tr>' . "\n" //juan carlos comenta // return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;M</td><td><span class="diffMoved" >' . $value . '</span></td></tr>' . "\n" //juan carlos comenta
;
return '<tr><td></td><td bgcolor="#FFFFAA">'. $value . '</td></tr>' . "\n" ; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente.
return '<tr><td></td><td bgcolor="#FFFFAA">' . $value . '</td></tr>' . "\n"; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente.
break; break;
}
case DIFF_ADDED: case DIFF_ADDED:
{
// return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;+</td><td><span class="diffAdded" >' . $value . '</span></td></tr>' . "\n" ; //juan carlos comentado // return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;+</td><td><span class="diffAdded" >' . $value . '</span></td></tr>' . "\n" ; //juan carlos comentado
return '<tr><td></td><td bgcolor="#CCFFCC">'. $value . '</td></tr>' . "\n" ; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente. return '<tr><td></td><td bgcolor="#CCFFCC">' . $value . '</td></tr>' . "\n"; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente.
break; break;
}
case DIFF_DELETED: case DIFF_DELETED:
{
// return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;-</td><td><span class="diffDeleted" >' . $value . '</span></td></tr>' . "\n" ; //juan carlos comentado // return '<tr><td>' . $line. '&nbsp;:&nbsp;' . '&nbsp;-</td><td><span class="diffDeleted" >' . $value . '</span></td></tr>' . "\n" ; //juan carlos comentado
return '<tr><td></td><td bgcolor="#FFAAAA">'. $value . '</td></tr>' . "\n" ; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente. return '<tr><td></td><td bgcolor="#FFAAAA">' . $value . '</td></tr>' . "\n"; //juan carlos muestra solo color (no tambi<EFBFBD>n la l<EFBFBD>nea). Adem<EFBFBD>s EN IEXPLORER VA BIEN PERO EN FIREFOX 3 la etiqueta span no muestra el color de fondo que est<EFBFBD> definido en la hoja de estilos como background-color, aceptando s<EFBFBD>lo la propiedad color pero esta solo da color al texto con lo cual los cambios quedan poco resaltados, adem<EFBFBD>s los cambios de otros objetos que no sean texto no se indican por ej. a<EFBFBD>adir una imagen, por esta raz<EFBFBD>n doy el color de fondo al td directamente.
}
}
}
if (! function_exists('array_diff_assoc') )
{
/**
* Replace array_diff_assoc()
*
* @link http://php.net/function.array_diff_assoc
* @author Aidan Lister <aidan@php.net>
* @since PHP 4.3.0
* @require PHP 4.0.0 (user_error)
*/
function array_diff_assoc()
{
// Check we have enough arguments
$args = func_get_args();
$count = count($args );
if (count($args ) < 2 )
{
trigger_error('Wrong parameter count for array_diff_assoc()', E_USER_WARNING );
return;
}
// Check arrays
for ($i = 0; $i < $count; $i++ )
{
if (! is_array($args[$i] ) )
{
trigger_error('array_diff_assoc() Argument #' . ($i + 1) . ' is not an array', E_USER_WARNING );
return;
}
}
// Get the comparison array
$array_comp = array_shift($args );
--$count;
// Traverse values of the first array
foreach ($array_comp as $key => $value )
{
// Loop through the other arrays
for ($i = 0; $i < $count; $i++ )
{
// Loop through this arrays key/value pairs and compare
foreach ($args[$i] as $comp_key => $comp_value )
{
if ((string) $key === (string)$comp_key && (string) $value === (string) $comp_value )
{
unset($array_comp[$key] );
}
}
}
}
return $array_comp;
}
} }
?> }

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save