Commit c0532b33 authored by mose's avatar mose

merge from 1.9 to 1.10, be careful, needs debugging (on my way)

parent 0587bad6
This diff is collapsed.
// ** I18N
// ** -*-codinf:utf-8 -*-
Calendar._DN = new Array
("Dimanche",
"Lundi",
......@@ -22,14 +22,13 @@ Calendar._MN = new Array
"Novembre",
"Décembre");
Calendar._SDN = new Array
("Lun",
("Dim",
"Lun",
"Mar",
"Mer",
"Jeu",
"Thu",
"Ven",
"Sam",
"Dim");
"Sam");
Calendar._SMN = new Array
("Jan",
"Fev",
......@@ -75,7 +74,7 @@ Calendar._TT["SEL_DATE"] = "Choisir une date";
Calendar._TT["DRAG_TO_MOVE"] = "Déplacer";
Calendar._TT["PART_TODAY"] = " (Aujourd'hui)";
Calendar._TT["DAY_FIRST"] = "Commencer par %s";
Calendar._TT["WEEKEND"] = "1,0";
Calendar._TT["WEEKEND"] = "6,0";
Calendar._TT["CLOSE"] = "Fermer";
Calendar._TT["TODAY"] = "Aujourd'hui";
Calendar._TT["TIME_PART"] = "Cliquez avec majuscule ou glissez pour changer de valeur.";
......
......@@ -22,14 +22,13 @@ Calendar._MN = new Array
"Novembre",
"Dcembre");
Calendar._SDN = new Array
("Lun",
("Dim",
"Lun",
"Mar",
"Mer",
"Jeu",
"Thu",
"Ven",
"Sam",
"Dim");
"Sam");
Calendar._SMN = new Array
("Jan",
"Fev",
......@@ -75,7 +74,7 @@ Calendar._TT["SEL_DATE"] = "Choisir une date";
Calendar._TT["DRAG_TO_MOVE"] = "Dplacer";
Calendar._TT["PART_TODAY"] = " (Aujourd'hui)";
Calendar._TT["DAY_FIRST"] = "Commencer par %s";
Calendar._TT["WEEKEND"] = "1,0";
Calendar._TT["WEEKEND"] = "6,0";
Calendar._TT["CLOSE"] = "Fermer";
Calendar._TT["TODAY"] = "Aujourd'hui";
Calendar._TT["TIME_PART"] = "Cliquez avec majuscule ou glissez pour changer de valeur.";
......
......@@ -30,6 +30,303 @@ for (i=0; i<father_keys.length; i++) {
lwidth = new Array();
var lwidthDetected = 0;
/* start layersmenu inclusion */
useTimeouts = 1;
timeoutLength = 1000; // time in ms; not significant if useTimeouts = 0;
shutdownOnClick = 0;
loaded = 0;
layersMoved = 0;
layerPoppedUp = "";
timeoutFlag = 0;
if (Opera56 || IE4) {
useTimeouts = 0;
}
if (NS4 || Opera56 || IE4) {
shutdownOnClick = 1;
}
currentY = 0;
function grabMouse(e) { // for NS4
currentY = e.pageY;
}
if (NS4) {
document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE);
document.onmousemove = grabMouse;
}
function seeThroughElements(show) {
if (show) {
foobar = "visible";
} else {
foobar = "hidden";
}
for (i=0; i<toBeHidden.length; i++) {
toBeHidden[i].style.visibility = foobar;
}
}
function shutdown() {
for (i=0; i<numl; i++) {
LMPopUpL(listl[i], false);
}
layerPoppedUp = "";
if (Konqueror || IE5) {
seeThroughElements(true);
}
}
if (shutdownOnClick) {
if (NS4) {
document.onmousedown = shutdown;
} else {
document.onclick = shutdown;
}
}
function setLMTO() {
if (useTimeouts) {
timeoutFlag = setTimeout('shutdown()', timeoutLength);
}
}
function clearLMTO() {
if (useTimeouts) {
clearTimeout(timeoutFlag);
}
}
function moveLayerX(menuName) {
if (!loaded || (isVisible(menuName) && menuName != layerPoppedUp)) {
return;
}
if (father[menuName] != "") {
if (!Opera5 && !IE4) {
width0 = lwidth[father[menuName]];
width1 = lwidth[menuName];
} else if (Opera5) {
// Opera 5 stupidly and exaggeratedly overestimates layers widths
// hence we consider a default value equal to $abscissaStep
width0 = abscissaStep;
width1 = abscissaStep;
} else if (IE4) {
width0 = getOffsetWidth(father[menuName]);
width1 = getOffsetWidth(menuName);
}
onLeft = getOffsetLeft(father[menuName]) - width1 + menuLeftShift;
onRight = getOffsetLeft(father[menuName]) + width0 - menuRightShift;
windowWidth = getWindowWidth();
windowXOffset = getWindowXOffset();
// if (NS4 && !DOM) {
// windowXOffset = 0;
// }
if (onLeft < windowXOffset && onRight + width1 > windowWidth + windowXOffset) {
if (onRight + width1 - windowWidth - windowXOffset > windowXOffset - onLeft) {
onLeft = windowXOffset;
} else {
onRight = windowWidth + windowXOffset - width1;
}
}
if (back[father[menuName]]) {
if (onLeft < windowXOffset) {
back[menuName] = 0;
} else {
back[menuName] = 1;
}
} else {
//alert(onRight + " - " + width1 + " - " + windowWidth + " - " + windowXOffset);
if (onRight + width1 > windowWidth + windowXOffset) {
back[menuName] = 1;
} else {
back[menuName] = 0;
}
}
if (back[menuName]) {
setLeft(menuName, onLeft);
} else {
setLeft(menuName, onRight);
}
}
moveLayerY(menuName); // workaround needed for Mozilla < 1.4 for MS Windows
}
function moveLayerY(menuName) {
if (!loaded || (isVisible(menuName) && menuName != layerPoppedUp)) {
return;
}
if (!layersMoved) {
moveLayers();
layersMoved = 1;
}
if (!NS4) {
newY = getOffsetTop("ref" + menuName);
} else {
newY = currentY;
}
newY += menuTopShift;
layerHeight = getOffsetHeight(menuName);
windowHeight = getWindowHeight();
windowYOffset = getWindowYOffset();
if (newY + layerHeight > windowHeight + windowYOffset) {
if (layerHeight > windowHeight) {
newY = windowYOffset;
} else {
newY = windowHeight + windowYOffset - layerHeight;
}
}
if (Math.abs(getOffsetTop(menuName) - newY) > thresholdY) {
setTop(menuName, newY);
}
}
function moveLayerX1(menuName, father) {
if (!lwidthDetected) {
return;
}
if (!Opera5 && !IE4) {
width1 = lwidth[menuName];
} else if (Opera5) {
// Opera 5 stupidly and exaggeratedly overestimates layers widths
// hence we consider a default value equal to $abscissaStep
width1 = abscissaStep;
}
foobar = getOffsetLeft(father + menuName);
if (!IE4) {
windowWidth = getWindowWidth();
windowXOffset = getWindowXOffset();
if (foobar + width1 > windowWidth + windowXOffset) {
foobar = windowWidth + windowXOffset - width1;
}
if (foobar < windowXOffset) {
foobar = windowXOffset;
}
}
setLeft(menuName, foobar);
}
function layersOverlap(layer, i) {
if (Konqueror22) {
return true;
}
// xa1 = getOffsetLeft(layer);
//setLeft(layer, xa1);
xa1 = layerLeft[layer];
xa2 = xa1 + getOffsetWidth(layer);
//setWidth(layer, xa2-xa1);
// ya1 = getOffsetTop(layer);
//setTop(layer, ya1);
ya1 = layerTop[layer];
ya2 = ya1 + getOffsetHeight(layer);
//setHeight(layer, ya2-ya1);
//alert(":" + xa1 + ":" + xa2 + ":" + ya1 + ":" + ya2 + ":");
xb1 = toBeHiddenLeft[i];
xb2 = xb1 + toBeHidden[i].offsetWidth;
yb1 = toBeHiddenTop[i];
yb2 = yb1 + toBeHidden[i].offsetHeight;
//alert(":" + xb1 + ":" + xb2 + ":" + yb1 + ":" + yb2 + ":");
if(xb1>xa1) xa1=xb1; if(xb2<xa2) xa2=xb2;
if(yb1>ya1) ya1=yb1; if(yb2<ya2) ya2=yb2;
return (xa2>xa1 && ya2>ya1);
}
function seeThroughWorkaround(menuName, on) {
for (i=0; i<toBeHidden.length; i++) {
if (layersOverlap(menuName, i)) {
if (on) {
toBeHidden[i].style.visibility = "hidden";
} else {
toBeHidden[i].style.visibility = "visible";
}
}
}
}
function LMPopUpL(menuName, on) {
if (!loaded) {
return;
}
if (!layersMoved) {
moveLayers();
layersMoved = 1;
}
setVisibility(menuName, on);
}
function LMPopUp(menuName, isCurrent) {
if (!loaded || menuName == layerPoppedUp || (isVisible(menuName) && !isCurrent)) {
return;
}
if (menuName == father[layerPoppedUp]) {
LMPopUpL(layerPoppedUp, false);
// seeThroughWorkaround(menuName, false);
} else if (father[menuName] == layerPoppedUp) {
LMPopUpL(menuName, true);
seeThroughWorkaround(menuName, true);
} else {
shutdown();
foobar = menuName;
do {
LMPopUpL(foobar, true);
seeThroughWorkaround(foobar, true);
foobar = father[foobar];
} while (foobar != "")
}
/*
if (layerPoppedUp == "") {
seeThroughElements(false);
}
*/
layerPoppedUp = menuName;
}
function resizeHandler() {
if (NS4) {
window.location.reload();
}
shutdown();
for (i=0; i<numl; i++) {
setLeft(listl[i], 0);
setTop(listl[i], 0);
}
// moveLayers();
layersMoved = 0;
}
window.onresize = resizeHandler;
function yaresizeHandler() {
if (window.innerWidth != origWidth || window.innerHeight != origHeight) {
if (Konqueror22 || Opera5) {
window.location.reload(); // Opera 5 often fails this
}
origWidth = window.innerWidth;
origHeight = window.innerHeight;
resizeHandler();
}
setTimeout('yaresizeHandler()', 500);
}
function loadHandler() {
if (Konqueror22 || Opera56) {
origWidth = window.innerWidth;
origHeight = window.innerHeight;
yaresizeHandler();
}
}
window.onload = loadHandler;
function fixieflm(menuName) {
if (DOM) {
setWidth(menuName, "100%");
} else { // IE4 IS SIMPLY A BASTARD !!!
document.write("</div>");
document.write("<div id=\"IE4" + menuName + "\" style=\"position: relative; width: 100%; visibility: visible;\">");
}
}
/* end layersmenu inclusion */
function moveLayers() {
if (!lwidthDetected) {
for (i=0; i<numl; i++) {
......
......@@ -3179,7 +3179,7 @@
* libs/Smarty.class.php
libs/Smarty_Compiler.class.php:
added CVS $Id: ChangeLog,v 1.5 2005-03-07 20:04:28 damosoft Exp $
added CVS Id
2003-03-31 Messju Mohr <messju@lammfellpuschen.de>
......
......@@ -26,7 +26,7 @@
* @package Smarty
*/
/* $Id: Smarty_Compiler.class.php,v 1.5 2005-03-07 20:04:29 damosoft Exp $ */
/* $Id: Smarty_Compiler.class.php,v 1.6 2005-03-12 16:49:52 mose Exp $ */
/**
* Template compiling class
......@@ -139,7 +139,7 @@ class Smarty_Compiler extends Smarty {
// #foo#
// "text"
// "text"
$this->_var_regexp = '(?:' . $this->_avar_regexp . '|' . $this->_qstr_regexp . ')';
$this->_var_regexp = '(?:' . $this->_avar_regexp . '|' . $this->_num_const_regexp . '|' . $this->_qstr_regexp . ')';
// matches valid object call (one level of object nesting allowed in parameters):
// $foo->bar
......
......@@ -27,7 +27,7 @@ function smarty_function_fetch($params, &$smarty)
}
$content = '';
if ($smarty->security && !preg_match('!^(http|ftp)://!i', $params['file'])) {
if ($smarty->security && !preg_match('!^(http|https|ftp)://!i', $params['file'])) {
$_params = array('resource_type' => 'file', 'resource_name' => $params['file']);
require_once(SMARTY_CORE_DIR . 'core.is_secure.php');
if(!smarty_core_is_secure($_params, $smarty)) {
......
......@@ -48,10 +48,12 @@ function smarty_function_popup($params, &$smarty)
case 'closefont':
case 'fgbackground':
case 'bgbackground':
case 'inarray':
case 'caparray':
case 'capicon':
case 'background':
case 'frame':
case 'function':
$append .= ',' . strtoupper($_key) . ",'$_value'";
break;
......
TikiWiki Changelog
------------------
$Header: /cvsroot/tikiwiki/tiki/changelog.txt,v 1.165 2005-01-22 22:54:52 mose Exp $
$Header: /cvsroot/tikiwiki/tiki/changelog.txt,v 1.166 2005-03-12 16:48:55 mose Exp $
All developers are invited to add relevant changes in that file as they
apply them to the CVS source. You can optionally include an identifer
......@@ -199,6 +199,12 @@ Version 1.9
* [NEW] plugin ATTACH to list attachements on a wiki page
* [MOD] Avoid sending user back to registration page on first login
Version 1.8.6 - Polaris -
<http://tikiwiki.org/ReleaseProcess186>
* [FIX] user bookmarks using httpRequest rather than fopen
Version 1.8.5 - Polaris -
<http://tikiwiki.org/ReleaseProcess185>
* [FIX] Header redirections now die; afterwards to prevent other code being
......
<?php
// $Header: /cvsroot/tikiwiki/tiki/comments.php,v 1.47 2005-01-22 22:54:52 mose Exp $
// $Header: /cvsroot/tikiwiki/tiki/comments.php,v 1.48 2005-03-12 16:48:55 mose Exp $
// Copyright (c) 2002-2005, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
......@@ -336,9 +336,13 @@ if ($_REQUEST["comments_threadId"] > 0) {
// Replies to comments.
$comment_info = $commentslib->get_comment($_REQUEST["comments_reply_threadId"]);
// Add the replied-to text, with >.
// Disabled by damian
// $smarty->assign('comment_data', preg_replace( '/\n/', '> ', '> ' . $comment_info["data"] ) );
$smarty->assign('comment_data', '');
// Disabled by damian
// $smarty->assign('comment_data', '');
// Re-enabled by rlpowell; my users rely on this. If you want to disable it, put an option in the forums or something.
// However, I re-enabled it *working*, instead of broken. -rlpowell
$comment_info["data"] = preg_replace( '/\n/', "\n> ", $comment_info["data"] ) ;
$comment_info["data"] = "\n> " . $comment_info["data"];
$smarty->assign( 'comment_data', $comment_info["data"] );
$smarty->assign('comment_title', tra('Re:').' '.$comment_info["title"]);
$smarty->assign('comments_reply_threadId', $_REQUEST["comments_reply_threadId"]);
......@@ -442,21 +446,32 @@ if (isset($_REQUEST["post_reply"]) && isset($_REQUEST["comments_reply_threadId"]
$threadId_if_reply = $_REQUEST["comments_reply_threadId"];
else
$threadId_if_reply = 0;
$comments_coms = $commentslib->get_comments($comments_objectId, $_REQUEST["comments_parentId"],
$comments_offset, $_REQUEST["comments_maxComments"], $_REQUEST["comments_sort_mode"], $_REQUEST["comments_commentFind"],
$_REQUEST['comments_threshold'], $_REQUEST["comments_style"], $threadId_if_reply);
$comments_cant = $commentslib->count_comments($comments_objectId);