Note: this list is kept only as a demonstration for CVSNotice. For the latest CVS notices, see the Xaraya and Postnuke sites
View Statistics - Next Notice - Previous NoticeDirectory filter : [ all ] / postnuke_official / html / modules / comments / common [ view in CVS ]
| Date | Directory [filter] | File(s) [view] | Author [filter] |
| 26 Jul 2002 02:50:01 | postnuke_official/html/modules/comments/common | CommonFunctions.php,1.18,1.19 | Carl P. Corliss |
| various bugfixes | |||
Update of /home/cvsroot/postnuke_official/html/modules/comments/common
In directory ns7.hostnuke.net:/tmp/cvs-serv8228/html/modules/Comments/common
Modified Files:
CommonFunctions.php
Log Message:
various bugfixes
Index: CommonFunctions.php
===================================================================
RCS file: /home/cvsroot/postnuke_official/html/modules/comments/common/CommonFunctions.php,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** CommonFunctions.php 1 Jul 2002 04:18:12 -0000 1.18
--- CommonFunctions.php 26 Jul 2002 02:49:59 -0000 1.19
***************
*** 24,94 ****
// ----------------------------------------------------------------------
! // Max allowable comment depth
! define('_COM_MAX_DEPTH',20);
!
! // the following two defines specify the sorting direction which
! // can be either ascending or descending
! define('_COM_SORT_ASC', 1);
! define('_COM_SORT_DESC', 0);
! // the following four defines specify the sort order which can be any of
! // the following: author, date, topic, lineage
! // TODO: Add Rank sorting
! define ('_COM_SORTBY_AUTHOR', 1);
! define ('_COM_SORTBY_DATE', 2);
! define ('_COM_SORTBY_LINEAGE', 3);
! define ('_COM_SORTBY_TOPIC', 4);
! // the following define is for $cid when
! // you want to retrieve all comments as opposed
! // to entering in a real comment id and getting
! // just that specific comment
! define('_COM_RETRIEVE_ALL', 0);
!
! define('_COM_VIEW_FLAT','flat');
! define('_COM_VIEW_NESTED','nested');
! define('_COM_VIEW_THREADED','threaded');
! // the following defines are for the $depth variable
! // the -1 (FULL_TREE) tells it to get the full
! // tree/branch and the the 0 (TREE_LEAF) tells the function
! // to acquire just that specific leaf on the tree.
! //
! define('_COM_FULL_TREE',((int) '-1'));
! define('_COM_TREE_LEAF',0);
! // Maximum allowable branch depth
! define('_COM_MAX_DEPTH',20);
!
! //
! // This function returns the Parent Id of the Current Comment based on
! // it's lineage.
! // @access public
! // @param Lineage string Lineage of comment
! // @returns integer
! // @return parent id of comment based on the lineage
! function pnComments_Getpid($Lineage) {
! // if the lineage is only a depth of one (ie,. Top level comment --
! // $Lineage = "6"; for example) then we return zero.
! if (!strstr($Lineage, ':')) { return 0; }
! // explode the lineage into an indexed array.
! $family = explode(':', $Lineage);
! // need to subtract two here to get the previous id due to the fact
! // that arrays start indexing at zero.
! // for example: say you have lineage = "1:2:3:4:5" for cid = 5;
! // When you explode the lineage into an array you get this:
! // array(0=>"1", 1=>"2", 2=>"3",3=>"4", 4=>"5")
! // so, being that there are 5 elements in this array and you want the
! // value of element 3 (because element 3 is the parent of element 4),
! // you would have to subtract 2 from the total number of elements (5) to
! // get the element you want (3)... plz excuse my ramblings... ;)
// lastly: we need to cast the return value to integer due to each
// comment id in the lineage containing a '|' to signify the end of that
// particular ID.
return pnComments_Hex2Dec($family[count($family)-2]);
! }
//
--- 24,92 ----
// ----------------------------------------------------------------------
! // the following two defines specify the sorting direction which
! // can be either ascending or descending
! define('_COM_SORT_ASC', 1);
! define('_COM_SORT_DESC', 0);
! // the following four defines specify the sort order which can be any of
! // the following: author, date, topic, lineage
! // TODO: Add Rank sorting
! define ('_COM_SORTBY_AUTHOR', 1);
! define ('_COM_SORTBY_DATE', 2);
! define ('_COM_SORTBY_LINEAGE', 3);
! define ('_COM_SORTBY_TOPIC', 4);
! // the following define is for $cid when
! // you want to retrieve all comments as opposed
! // to entering in a real comment id and getting
! // just that specific comment
! define('_COM_RETRIEVE_ALL', 0);
! define('_COM_VIEW_FLAT','flat');
! define('_COM_VIEW_NESTED','nested');
! define('_COM_VIEW_THREADED','threaded');
! // the following defines are for the $depth variable
! // the -1 (FULL_TREE) tells it to get the full
! // tree/branch and the the 0 (TREE_LEAF) tells the function
! // to acquire just that specific leaf on the tree.
! //
! define('_COM_FULL_TREE',((int) '-1'));
! define('_COM_TREE_LEAF',0);
! // Maximum allowable branch depth
! define('_COM_MAX_DEPTH',20);
!
! //
! // This function returns the Parent Id of the Current Comment based on
! // it's lineage.
! // @access public
! // @param Lineage string Lineage of comment
! // @returns integer
! // @return parent id of comment based on the lineage
! function pnComments_Getpid($Lineage) {
! // if the lineage is only a depth of one (ie,. Top level comment --
! // $Lineage = "6"; for example) then we return zero.
! if (!strstr($Lineage, ':')) {
! return 0;
! }
! // explode the lineage into an indexed array.
! $family = explode(':', $Lineage);
! // need to subtract two here to get the previous id due to the fact
! // that arrays start indexing at zero.
! // for example: say you have lineage = "1:2:3:4:5" for cid = 5;
! // When you explode the lineage into an array you get this:
! // array(0=>"1", 1=>"2", 2=>"3",3=>"4", 4=>"5")
! // so, being that there are 5 elements in this array and you want the
! // value of element 3 (because element 3 is the parent of element 4),
! // you would have to subtract 2 from the total number of elements (5) to
! // get the element you want (3)... plz excuse my ramblings... ;)
// lastly: we need to cast the return value to integer due to each
// comment id in the lineage containing a '|' to signify the end of that
// particular ID.
return pnComments_Hex2Dec($family[count($family)-2]);
! }
//
***************
*** 99,103 ****
// @returns string
// @return Empty string if cid==0, or the lineage of the comment
! function pnComments_GetLineage($cid) {
// return an empty string if cid equals zero..
--- 97,101 ----
// @returns string
// @return Empty string if cid==0, or the lineage of the comment
! function pnComments_GetLineage( $cid ) {
// return an empty string if cid equals zero..
***************
*** 264,267 ****
--- 262,266 ----
default:
case _COM_SORTBY_LINEAGE:
+
// Here we just create the lineage of each comment as it's key -- allows us
// to sort by the lineage using the Lineage_Cmp function below
***************
*** 269,274 ****
$key = $comment['lineage'];
$PreSortList[$key] = $comment;
! $PreSortList[$key]['depth'] =
! pnComments_GetDepth($comment['lineage']);
}
--- 268,272 ----
$key = $comment['lineage'];
$PreSortList[$key] = $comment;
! $PreSortList[$key]['depth'] = pnComments_GetDepth($comment['lineage']);
}
***************
*** 278,297 ****
// then sort using our own personal comparison function
uksort($PreSortList, 'pnComments_LineageCmp');
!
// we took care of the depth earlier in this function --
// now we are setting the HasChildren field for each comment
// which is true if the next comment has the current comments'
// lineage in it's lineage string.
! for ($i = 0; $PreSortList[$i]; $i++) {
! if (stristr($PreSortList[($i + 1)]['lineage'], $PreSortList[$i]['lineage']) {
! $PreSortList[$i]['HasChildren'] = true;
} else {
! $PreSortList[$i]['HasChildren'] = false;
}
break;
}
!
! return $PreSortList;
}
--- 276,303 ----
// then sort using our own personal comparison function
uksort($PreSortList, 'pnComments_LineageCmp');
!
// we took care of the depth earlier in this function --
// now we are setting the HasChildren field for each comment
// which is true if the next comment has the current comments'
// lineage in it's lineage string.
! $i = 0;
! $sorted = array();
!
! foreach($PreSortList as $comment) {
! $nextcomment = next($PreSortList);
!
! if (stristr($nextcomment['lineage'], $comment['lineage'])) {
! $sorted[$i] = $comment;
! $sorted[$i]['HasChildren'] = true;
} else {
! $sorted[$i] = $comment;
! $sorted[$i]['HasChildren'] = false;
! }
! $i++;
}
break;
}
! return $sorted;
}
***************
*** 336,350 ****
// change the id's contained in the lineage to their
// decimal equivalents to make for easier sorting.
foreach ($Family_A as $id) {
! $id = pnComments_Hex2Dec($id);
}
$Family_B = explode(':',$b);
$Family_B_count = count($Family_B);
!
foreach ($Family_B as $id) {
! $id = pnComments_Hex2Dec($id);
}
!
// We need the lineage with the least amount of id's in
--- 342,359 ----
// change the id's contained in the lineage to their
// decimal equivalents to make for easier sorting.
+ $newfama = array();
foreach ($Family_A as $id) {
! $newfama[] = pnComments_Hex2Dec($id);
}
+ $Family_A = $newfama;
$Family_B = explode(':',$b);
$Family_B_count = count($Family_B);
!
! $newfamb = array();
foreach ($Family_B as $id) {
! $newfamb[] = pnComments_Hex2Dec($id);
}
! $Family_B = $newfamb;
// We need the lineage with the least amount of id's in
***************
*** 515,519 ****
}
!
/*
--- 524,537 ----
}
! function pnComments_ConvertLineage2Dec($lineage) {
! $family = explode(':',$lineage);
!
! $converted = array();
! foreach ($family as $key => $child) {
! $converted[$key] = pnComments_Hex2Dec($child);
! }
!
! return implode(':',$converted);
! }
/*
***************
*** 575,581 ****
*/
! function BuildUpgradeList($args, &$CommentList=array(), $pid=0, $lineage='') {
! if (count($args) <> 13) // too few arguments
$msg = pnML('Could not upgrade - too few arguments!');
pnExceptionSet(PN_SYSTEM_EXCEPTION, 'UNKNOWN',
--- 593,602 ----
*/
! function BuildUpgradeList($args, &$CommentList, $pid=0, $lineage='') {
! if (empty($CommentList)) {
! $CommentList = array();
! }
! if (count($args) <> 13) { // too few arguments
$msg = pnML('Could not upgrade - too few arguments!');
pnExceptionSet(PN_SYSTEM_EXCEPTION, 'UNKNOWN',
***************
*** 599,603 ****
$sql = "SELECT * FROM {$args[Table]} WHERE {$args[pidfield]}='$pid' ORDER BY {$cidfield} ASC";
$result = $dbconn->Execute($sql);
!
if ($dbconn->ErrorNo() != 0) {
$msg = pnMLByKey('DATABASE_ERROR', $query);
--- 620,624 ----
$sql = "SELECT * FROM {$args[Table]} WHERE {$args[pidfield]}='$pid' ORDER BY {$cidfield} ASC";
$result = $dbconn->Execute($sql);
!
if ($dbconn->ErrorNo() != 0) {
$msg = pnMLByKey('DATABASE_ERROR', $query);
***************
*** 649,653 ****
// create the lineage for this comment
if ($pid = 0) {
! $comment['lineage'] = $row[$args['cid']
} else {
// if the depth of the lineage exceeds the allowed amount,
--- 670,674 ----
// create the lineage for this comment
if ($pid = 0) {
! $comment['lineage'] = $row[$args['cid']];
} else {
// if the depth of the lineage exceeds the allowed amount,
***************
*** 680,686 ****
$result->MoveNext();
}
-
return $CommentList;
}
!
! ?>
--- 701,705 ----
$result->MoveNext();
}
return $CommentList;
}
! ?>
\ No newline at end of file
View Statistics - Next Notice - Previous Notice
| Visit Developer Site - Browse CVS Repository |
Syndicate via backend.rss (max. once per hour please) | Powered by CVSNotice 0.1.3 |