diff --git a/BitKeeper/custom/addcomment b/BitKeeper/custom/addcomment deleted file mode 100644 index 794b8efd69..0000000000 --- a/BitKeeper/custom/addcomment +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -# Add a comment to a file -# Steps to make sure the comment is propagated, -# because bk comments is NOT (lame) -# -# 1. create a delta on the file and grab the revision -# 2. run bk comments on that revision -# 3. committ it to a changeset - -# Synopsis: -# -# bk addcomment [-y] - -# Configurable items -CMTWHENEMPTY="New comment on" -CMTCSET="Comment added for" - -_usage() { - echo "Usage: addcomment [-y\"\"] -- add propagatable comment for " - exit 1 -} - -# Check arguments -FILENAME='' -COMMENT='' -if [ $# -gt 2 -o $# -lt 1 ] -then _usage -fi - -while getopts :hy: opt -do - case "$opt" in - h) _usage - ;; - y) COMMENT=$OPTARG - ;; - *) _usage - ;; - esac -done -shift `expr $OPTIND - 1` - -if [ $# -eq 2 -a "X$COMMENT"=X ] -then _usage - exit 1 -fi - -#filename should be the last argument so in $@ -FILENAME=$@ -test -f $FILENAME || { - echo "Can't find '$FILENAME'" - exit 1 -} - -# if comment is empty ask for it otherwise go through with -# the thing automatically -if [ "X$COMMENT" = X ] -then TMPCOMMENT="$CMTWHENEMPTY $FILENAME" -fi - -bk ci -qlf -y"\"${TMPCOMMENT}\"" $FILENAME || { - echo "Check in of comment failed" - exit 1 -} - -# Grab the file revision which was created by that checking -REV=`prs -hr+ -d:REV: $FILENAME` -echo Created revision $REV for $FILENAME - -# Change the comments to this revision -if [ "X$COMMENT" = X ] -then - # if comments was empty fire up the editor to change them - echo "Editting comments in ${EDITOR}..." - bk comments -r$REV $FILENAME -fi - -# Commit it to a specific changeset, takinig the deltas from stdin -# use -f with list of revisions to commit like test/SCCS/s.testfile.txt|1.13 -bk prs -h -r$REV -d":SPN:|:REV:\n" $FILENAME | bk commit -y"\"$CMTCSET $FILENAME\"" - - diff --git a/BitKeeper/custom/archdeleted b/BitKeeper/custom/archdeleted deleted file mode 100644 index 079056941b..0000000000 --- a/BitKeeper/custom/archdeleted +++ /dev/null @@ -1,91 +0,0 @@ -#!/bin/sh - -# Archive deleted files from a certain month -# arguments -m - -_usage() { - echo "Usage: archdeleted -m -- archives deleted file in month and adds them to the gone file" - exit 1 -} - -# Check if we are at least at bk version 3.0 2.x has no bk prompt command -case `bk version` in - *2.*) - echo "You need bk version 3.0 or higher to run this command, please upgrade" - exit 1 - ;; -esac - -# Check arguments -MONTH='' -while getopts :m: opt -do - case "$opt" in - m) MONTH=$OPTARG - ;; - *) _usage - ;; - esac -done -shift `expr $OPTIND - 1` -if [ "X$MONTH" = X ] -then _usage -fi -if [ $MONTH -lt 1 -o $MONTH -gt 12 ] -then _usage -fi - -MONTH=`printf "%02d" $MONTH` -YEAR=`date "+%Y"` - -echo "Archiving: $MONTH-$YEAR" -# 1. find all files in deleted directory for a certain month -# 2. create a tar file for these files -# 3. bk gone the list of files -# 4. bk rmgone - -# 1. in deleted dir -deldir=`bk root`/BitKeeper/deleted -cd $deldir - -# 2. count the files for this period -numfiles=$(bk prs -hDr+ -d"\$if(:Dm: -eq $MONTH){:UTC:\n}" | wc -l) -echo "$numfiles files in period $MONTH-$YEAR to archive" -#================================== Info ================================== -bk prompt -i "I'm about to archive $numfiles files into the file $YEAR-$MONTH-del.tar.gz. -The archive will contain the files which were deleted and which had their -latest revision in this period. The files will be put into the archive and -then registered as gone from the repository." && ( - -echo "Starting archiving" - -# 3. tar -czvf deleted--$1.tar.gz -tarfile=$YEAR-$MONTH-del.tar.gz -if [ -f ./$tarfile ] -then - echo "Archive with that name already exists!" - exit 1 -fi - -# Make sure the dir is clean -bk clean -bk prs -hDr+ -d"\$if(:Dm: -eq $MONTH){:GFILE:\n}" | xargs -n1 bk get -# All the gotten files are starting with .del make sure tar gets them -# also make sure the directory is cleaned again -tar -czvf $YEAR-$MONTH-del.tar.gz --exclude=SCCS .del* -bk clean - -# 3. bk gone -echo "Archive created, adding files to gone file" -bk prs -hDr+ -d"\$if(:Dm: -eq $MONTH){:GFILE:\n}" | xargs -n1 bk prs -hDr+ -d":ROOTKEY:\n" | bk gone - -bk prompt -c "Once you have committed the gone file and optionally pushed your -changes, you may issue the bk rmgone command which will physically remove -the files listed in the gone file. Be carefull with that command as it -cannot be undone and you will need a backup if something goes wrong!" -) -echo "Finished" -exit 0 - - - - diff --git a/BitKeeper/custom/chelp b/BitKeeper/custom/chelp deleted file mode 100644 index 22804aa7b6..0000000000 --- a/BitKeeper/custom/chelp +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -reproot=`bk root` -bk help -f $reproot/BitKeeper/custom/customhelp.txt $@ \ No newline at end of file diff --git a/BitKeeper/custom/chelptool b/BitKeeper/custom/chelptool deleted file mode 100644 index 8b67458c00..0000000000 --- a/BitKeeper/custom/chelptool +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -reproot=`bk root` -bk helptool -f $reproot/BitKeeper/custom/customhelp.txt $@ \ No newline at end of file diff --git a/BitKeeper/custom/customhelp.txt b/BitKeeper/custom/customhelp.txt deleted file mode 100644 index 5e91c93ca6..0000000000 --- a/BitKeeper/custom/customhelp.txt +++ /dev/null @@ -1,328 +0,0 @@ -help://All -help://All.sum -help://bk-All -help://bk-All.sum -help://topics -help://topic -help://command -help://commands -help://bk - -All(sum) Custom bitkeeper commands manual All(sum) - - - -NAME - All - summary of all custom commands - -COMMANDS - bk addcomment - add propagatable comment for a file - - bk archdeleted - archive deleted files and add them to the gone file - - bk chelp - get help for custom commands - - bk chelptool - graphical frontend to the custom command help system. - - - -AUTHORS - Marcel van der Boom - - - -Xaraya group 0.0.1 All(sum) -$ -help://Overview -help://Overview.sum -help://bk-Overview -help://bk-Overview.sum - -Overview(sum) Custom bitkeeper commands manual Overview(sum) - - - -NAME - Overview - Summary of the custom command system - -DESCRIPTION - The custom command system allows developers to extend bitkeeper with - their own commands. The system is organized in the spirit of BitKeeper, - meaning that the custom commands can be used in the same way as normal - BitKeeper commands: - - bk customcmd - - - A plain vanilla BitKeeper installation has a number of places in which - it looks for commands: - - - internally - - - in the bk.script file (macro like functionality) - - - in the path - - - The custom command system adds a number of things to the command execu- - tion logic: - - - it searches in the /BitKeeper/custom directory for executable scripts - - - the scripts in this directory are in the repository so they are ver- - sion controlled and will be propagated on pulls and pushes - - - a bk chelp and bk chelptool command which contains help pages for the - custom commands. - - - The help system documents the custom commands implemented, discusses - the architecture of the system and contains instructions on how to - develop your own custom commands. - -FILES - /BitKeeper/custom/customcmd - - -AUTHORS - Marcel van der Boom - - - -Xaraya group 0.0.1 Overview(sum) -$ -help://addcomment -help://addcomment.1 -help://bk-addcomment -help://bk-addcomment.1 -help://addcomment - -addcomment(1) Custom bitkeeper commands manual addcomment(1) - - - -NAME - bk addcomment - add propagatable comment for - -SYNTAX - bk addcomment [-y""] - - -DESCRIPTION - The bk addcomment command creates a comment for the file specified by - . This commands does not have the limitation of the bk comments - command that comments are not propagated. - - To establish this, the command creates a delta on the file and commits - a changeset which is specifically for the comment added to the file. - This command can be helpful for implementing a review system directly - in bk or having this command as a part of a custom bk application which - needs a commenting function on specific content. - - With the normal bk commands or the web interface these comments can - easily be viewed. - -OPTIONS - -y - Specify the comments on the command line instead of letting bk - ask for it. - - The filename for which the comments should be added. - -FILES - /BitKeeper/custom/addcomment - - -EXAMPLES - bk addcomment -y "This comment added" testfile.txt - - Adds the comment "This comment added" for the file "testfile.txt" - - -AUTHORS - Marcel van der Boom - - - -Xaraya group 0.0.1 addcomment(1) -$ -help://archdeleted -help://archdeleted.1 -help://bk-archdeleted -help://bk-archdeleted.1 -help://archdeleted - -archdeleted(1) Custom bitkeeper commands manual archdeleted(1) - - - -NAME - bk archdeleted - archives deleted files and add them to gone file - -SYNTAX - bk archdeleted -m - - -DESCRIPTION - The bk archdeleted command archives deleted files in the Bit- - Keeper/deleted folder into a tar.gz archive and adds the files to the - gone file. - - Once the gone file is committed and propagated other developers can - simply issue a bk rmgone command to physically delete the files which - are in the gone file. It's generally a good idea to keep deleted files - some time around. The -m specifier can be used to archive the files in - a certain month in the current year. The repository manager can decide - which files can be archived. For example by keeping deleted files - around for two months or so. - - -OPTIONS - -f - Archive deleted files which had their lates revision in month - lt;monthnr>. - -FILES - /BitKeeper/custom/archdeleted - - -EXAMPLES - bk archdeleted -m 11 - - Archives the deleted files which had their latest revision in November - of the current year. - - -AUTHORS - Marcel van der Boom - - - -Xaraya group 0.0.1 archdeleted(1) -$ -help://chelp -help://chelp.1 -help://bk-chelp -help://bk-chelp.1 -help://help - -chelp(1) Custom bitkeeper commands manual chelp(1) - - - -NAME - bk chelp - shows information about the custom help system - -SYNTAX - bk chelp [-akp] [-f ] [] - - -DESCRIPTION - The bk chelp command is basically the same as bk help but it opens the - specific custom help file which describes the custom commands defined - in the repository. bk chelp itself is a custom command. - -OPTIONS - -a Just search the custom help file for the string . - - -k Similar to -a but only matches whole words. - - -p disable the use of any pager just send the output to stdout. - - -f - Use as the helptext file. - -FILES - /BitKeeper/custom/chelp - - -EXAMPLES - bk chelp topics - - This displays the topics in the custom helpfile on stdout. - - -AUTHORS - Marcel van der Boom - -SEE ALSO - bk chelptool (1) - - - -Xaraya group 0.0.1 chelp(1) -$ -help://chelptool -help://chelptool.1 -help://bk-chelptool -help://bk-chelptool.1 -help://helptool - -chelptool(1) Custom bitkeeper commands manual chelptool(1) - - - -NAME - bk chelptool - shows information about the custom help system in the - graphical help viewer - -SYNTAX - bk chelptool [-akp] [-f ] [] - - -DESCRIPTION - The bk chelptool command is basically the same as bk helptool but it - opens the specific custom help file which describes the custom commands - defined in the repository. bk chelptool itself is a custom command. - -OPTIONS - -a Just search the custom help file for the string . - - -k Similar to -a but only matches whole words. - - -p disable the use of any pager just send the output to stdout. - - -f - Use as the helptext file. - -FILES - /BitKeeper/custom/chelptool - - -EXAMPLES - bk chelptool topics - - This displays the topics in the custom helpfile on stdout. - - -AUTHORS - Marcel van der Boom - -SEE ALSO - bk chelp(1) - - - -Xaraya group 0.0.1 chelptool(1) -$ -help://rmgone -help://rmgone.1 -help://bk-rmgone -help://bk-rmgone.1 -help://help - -rmgone(1) Custom bitkeeper commands manual rmgone(1) - - - -NAME - bk rmgone - removes files in gone file - -DESCRIPTION - See the bk helptool for detail on bk rmgone. It's a standard bk com- - mand. - - - -Xaraya group 0.0.1 rmgone(1) -$ diff --git a/BitKeeper/custom/install.txt b/BitKeeper/custom/install.txt deleted file mode 100644 index 8bf223d357..0000000000 --- a/BitKeeper/custom/install.txt +++ /dev/null @@ -1,101 +0,0 @@ -Note: At the time of writing the custom command system has only been tested - on a linux system. There's no reason it shouldn't work on any other - platform supported by bk, i just haven't tested it. - -Activation instructions ------------------------ -This repository supports custom commands. For custom commands to work you have to -do one thing. Tell bitkeeper to look in this directory for commands. - -The easiest way to do this, is to add a few lines to the file bk.script, -which is located in the bitkeeper install directory. -(type bk bin to find out what it is) - -================================================================================= -IMPORTANT: Read carefully, it is easy to make a typing error and the snippet needs - to be in exactly the right location! -================================================================================= - -At the very end of your current bk.script file there are probably the following lines: - -... -... -# ------------- main ---------------------- -__platformInit -__init -if type "_$1" >/dev/null 2>&1 -then cmd=_$1 - shift - $cmd "$@" - exit $? -fi -cmd=$1 -shift - -if type "$cmd" > /dev/null 2>&1 -then - exec $cmd "$@" -else - echo "$cmd: command not found" - exit 1 -fi -if type "$cmd" > /dev/null 2>&1 -then - exec $cmd "$@" -else - echo "$cmd: command not found" - exit 1 -fi - -Make sure it looks like this: -... -... -# ------------- main ---------------------- -__platformInit -__init - -if type "_$1" >/dev/null 2>&1 -then cmd=_$1 - shift - $cmd "$@" - exit $? -fi -cmd=$1 -shift - -# INSERTION STARTS HERE -# custom command ? -custdir=`bk root`/BitKeeper/custom -bk get -Sq $custdir/$cmd > /dev/null 2>&1 -if type $custdir/$cmd > /dev/null 2>&1 -then - exec $custdir/$cmd "$@" - exit $? -fi -# INSERTION ENDS HERE - -# Is the command in the path (normal os command) -if type "$cmd" > /dev/null 2>&1 -then - exec $cmd "$@" -else - echo "$cmd: command not found" - exit 1 -fi - - -From that point on bk also looks in the BitKeeper/custom directory for extra commands -defined in the repository. - -A vanilla custom command system defines at least two commands: - -bk chelp - custom help command line version -bk chelptool - custom help graphical frontend - -The custom help system should contain information about the custom commands defined -for the repository you are working with at a given time. - -Enjoy! - -Marcel - diff --git a/BitKeeper/custom/phpcheck b/BitKeeper/custom/phpcheck deleted file mode 100644 index f72258ff4c..0000000000 --- a/BitKeeper/custom/phpcheck +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -# Run some sanity checks for php sourcefiles - -STARTDIR=`bk root` -cd $STARTDIR -for i in `bk sfiles -gU | grep ".php"`; do - bk get -qS $i - php -q -l -f $i -done \ No newline at end of file diff --git a/BitKeeper/etc/config b/BitKeeper/etc/config deleted file mode 100644 index b2add2b94b..0000000000 --- a/BitKeeper/etc/config +++ /dev/null @@ -1,22 +0,0 @@ -repository: xaraya-modules -description: Xaraya modules repository -category: applications/publishing -logging: logging@openlogging.org -license: -single_user: -single_host: -compression: gzip -autofix: yes -checkout:edit -contact: -email: marcel@hsdev.com -street: -city: -state: -postal: -country: -phone: -cell: -pager: -hours: -homepage: http://www.xaraya.com diff --git a/BitKeeper/etc/gone b/BitKeeper/etc/gone deleted file mode 100644 index 48c0a04838..0000000000 --- a/BitKeeper/etc/gone +++ /dev/null @@ -1,92 +0,0 @@ -BK|CVSROOT/checkoutlist|19700101030959|00353|117f5a7acbe9e0cc -BK|CVSROOT/commitinfo|19700101030959|00351|e342a80eabc4de7a -BK|CVSROOT/config|19700101030959|00357|912bcf1d6504697a -BK|CVSROOT/cvswrappers|19700101030959|00354|d3afc53b852f6b40 -BK|CVSROOT/editinfo|19700101030959|00349|166b10f326c93d17 -BK|CVSROOT/loginfo|19700101030959|00347|b13e975675c2ecdf -BK|CVSROOT/modules|19700101030959|00356|b0d86bfc35b92858 -BK|CVSROOT/notify|19700101030959|00355|c74c5283f99190e4 -BK|CVSROOT/rcsinfo|19700101030959|00348|f9dce88887861ac0 -BK|CVSROOT/taginfo|19700101030959|00352|d3aee47a678a7080 -BK|CVSROOT/verifymsg|19700101030959|00350|b96de1393d947475 -BK|New_pnadmin/html/CVSROOT/checkoutlist|19700101030959|01117|5a1b13975993016d -BK|New_pnadmin/html/CVSROOT/commitinfo|19700101030959|01115|a72a4c7ddef05a37 -BK|New_pnadmin/html/CVSROOT/config|19700101030959|01121|418fdb87a1dd9842 -BK|New_pnadmin/html/CVSROOT/cvswrappers|19700101030959|01118|bf24304b6ae476f4 -BK|New_pnadmin/html/CVSROOT/editinfo|19700101030959|01113|937b7d74d1b84157 -BK|New_pnadmin/html/CVSROOT/loginfo|19700101030959|01111|1741b7a785f63088 -BK|New_pnadmin/html/CVSROOT/modules|19700101030959|01120|743562181402adb -BK|New_pnadmin/html/CVSROOT/notify|19700101030959|01119|3990e750f579d58c -BK|New_pnadmin/html/CVSROOT/rcsinfo|19700101030959|01112|4cd758d29436130d -BK|New_pnadmin/html/CVSROOT/taginfo|19700101030959|01116|271bc9e197e607b8 -BK|New_pnadmin/html/CVSROOT/verifymsg|19700101030959|01114|b7b8648adf2974d4 -BK|New_pnadmin/html/modules/admin/Attic/changes.txt|19700101030959|01087|d0f40681b54e178a -BK|New_pnadmin/html/modules/admin/docs/Attic/Intructions.txt|19700101030959|01049|35343e951d000feb -BK|New_pnadmin/html/modules/admin/docs/old_admin_docs/Attic/changelog.txt|19700101030959|01046|fdcdeb4ce98a4e92 -BK|New_pnadmin/html/modules/admin/docs/old_admin_docs/Attic/credits.txt|19700101030959|01047|7fb20a4c9c3dc8e0 -BK|New_pnadmin/html/modules/admin/docs/old_admin_docs/Attic/install.txt|19700101030959|01048|88b54866514d0ccd -BK|PostContact/admin_functions/add_city.php|19700101030959|00964|e243cab28b98c4c1 -BK|PostContact/admin_functions/add_country.php|19700101030959|00965|5f33ea1a237469b5 -BK|PostContact/admin_functions/add_department.php|19700101030959|00966|386a0a05a9d82d39 -BK|PostContact/admin_functions/add_locationtype.php|19700101030959|00967|a59d20cd52bafa38 -BK|PostContact/admin_functions/add_title.php|19700101030959|00968|e2ebb81c9757447e -BK|PostContact/admin_functions/companyinfo.php|19700101030959|00969|bb9c4485c23c82a -BK|PostContact/admin_functions/newcontact.php|19700101030959|00970|27acface2a474880 -BK|PostContact/lang/deu/global.php|19700101030959|00997|58d877e83bc48b9a -BK|PostContact/lang/eng/global.php|19700101030959|00998|50d11648f73af581 -BK|PostContact/lang/swe/global.php|19700101030959|00999|e43fdcc972ea515b -BK|PostContact/sql/contact_sql.php|19700101030959|01003|7d64bc34f26bd986 -BK|articles/pnlang/eng/Attic/first.php|19700101030959|00366|986e494885f026e5 -BK|articles/pnlang/x_brazilian_portuguese/Attic/admin.php|19700101030959|00370|307a75fa2a0ca465 -BK|articles/pnlang/x_brazilian_portuguese/Attic/first.php|19700101030959|00371|9018f896ec54fc8d -BK|articles/pnlang/x_brazilian_portuguese/Attic/user.php|19700101030959|00372|25f50beaeba90d18 -BK|articles/pntemplates/Attic/user-display-section.pnd|19700101030959|00385|e64d6ba36e3966dd -BK|articles/pntemplates/Attic/user-news-content.pnd|19700101030959|00382|1b9e8d2d89c6ecfc -BK|articles/pntemplates/Attic/user-section-content.pnd|19700101030959|00383|275b72b9cef774bb -BK|articles/pntemplates/Attic/user-section-summary.pnd|19700101030959|00384|7e0a75352a5c90db -BK|articles/pntemplates/Attic/user-story.pnd|19700101030959|00381|98a095841ac2fb9 -BK|articles/pntemplates/user-display-sections.pnd|19700101030959|00396|e227a4beb07c66c6 -BK|articles/pntemplates/user-sections-summary.pnd|19700101030959|00397|ded671b1b0f99ab -BK|bookcooperative/pnimages/.xvpics/Attic/browse.gif|19700101030959|00661|5b123880b26f501d -BK|bookcooperative/pnimages/.xvpics/Attic/find-a-book.gif|19700101030959|00662|949a73244e5f963a -BK|bookcooperative/pnimages/.xvpics/Attic/logo.gif|19700101030959|00665|2b61a8bb580435d2 -BK|bookcooperative/pnimages/.xvpics/Attic/mybooks.gif|19700101030959|00663|3cd5b03f3a0808c8 -BK|bookcooperative/pnimages/.xvpics/Attic/request-a-book.gif|19700101030959|00666|e87a7e156da41947 -BK|bookcooperative/pnimages/.xvpics/Attic/search.gif|19700101030959|00664|a8c7917bc1334dfd -BK|bookcooperative/pnimages/.xvpics/Attic/sell-a-book.gif|19700101030959|00667|839b013de33ff28 -BK|ephemerids/pnlang/nor/Attic/manual.html|19700101030959|00210|ef445e8bb401a046 -BK|ephemerids/pnlang/rus/Attic/global.php|19700101030959|00213|92d586ddcce45c3e -BK|gamedata/Attic/starcraft.php|19700101030959|00628|d7d2b95fdc95ddde -BK|postcalendar/pnlang/deu/Attic/first.php|19700101030959|00125|22a56446b494c25d -BK|postcalendar/pnlang/deu/Attic/index.htm|19700101030959|00126|c3de7c3820458b6b -BK|postcalendar/pnlang/eng/Attic/first.php|19700101030959|00134|d7e1127eec46a3c8 -BK|postcalendar/pntemplates/default/Attic/calendarblock_month_view.html|19700101030959|00153|2c2249e1ac38e98e -BK|postcalendar/pntemplates/default/Attic/calendarblock_todays_events.html|19700101030959|00154|6c7eebdf681085c3 -BK|postcalendar/pntemplates/default/Attic/calendarblock_upcoming_events.html|19700101030959|00155|b77e99c7451c06c1 -BK|postcalendar/pntemplates/default/Attic/month_view.html|19700101030959|00156|7c7264bab6cf8fff -BK|postcalendar/pntemplates/default/Attic/submit.html|19700101030959|00157|8f7ed682ffec9664 -BK|postcalendar/pntemplates/default/views/config/Attic/default.conf|19700101030959|00179|d030e0bcda8207d2 -BK|postcalendar/utility/Attic/upgrade.php|19700101030959|00197|a49d65af14ab509b -BK|serverbrowser/pnimages/levelshots/hls/Attic/as_oilrig.jpg|19700101030959|00800|3f35249eb4fb70d1 -BK|serverbrowser/pnimages/levelshots/hls/Attic/as_tundra.jpg|19700101030959|00805|33aa751608a6b86 -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_747.jpg|19700101030959|00810|cab8263277d43087 -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_assault.jpg|19700101030959|00815|2be531f743b79ed9 -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_backalley.jpg|19700101030959|00801|45a8b256178eb54b -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_estate.jpg|19700101030959|00806|216320eba46a9f41 -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_italy.jpg|19700101030959|00811|8de771322669292a -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_militia.jpg|19700101030959|00816|619d0ede96ebf28b -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_office.jpg|19700101030959|00802|8078eff513bbbd18 -BK|serverbrowser/pnimages/levelshots/hls/Attic/cs_siege.jpg|19700101030959|00807|9fd3b52b725f13fa -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_aztec.jpg|19700101030959|00812|17c76f032612706d -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_cbble.jpg|19700101030959|00817|428ad2b545f5906 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_dust.jpg|19700101030959|00803|8dc31efe7b418827 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_dust2.jpg|19700101030959|00808|e57dd6bb55085c18 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_inferno.jpg|19700101030959|00813|92d6e64023f46f35 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_nuke.jpg|19700101030959|00818|a96f00b0789b447a -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_prodigy.jpg|19700101030959|00804|ba0132fcb69d7ada -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_train.jpg|19700101030959|00809|ee8f19a0a60002c6 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_vegas.jpg|19700101030959|00814|42438793caed8ac1 -BK|serverbrowser/pnimages/levelshots/hls/Attic/de_vertigo.jpg|19700101030959|00819|a7dc0b3d541d611a -BK|todolist/docs/Attic/README|19700101030959|00252|b974f7c0386a736c -BK|todolist/docs/Attic/WHATSNEW|19700101030959|00251|8e481e9dad4ee07b -BK|todolist/pnlang/eng/Attic/global.php|19700101030959|00269|7f89786d90a9e8ed diff --git a/BitKeeper/etc/ignore b/BitKeeper/etc/ignore deleted file mode 100644 index 8200667721..0000000000 --- a/BitKeeper/etc/ignore +++ /dev/null @@ -1,20 +0,0 @@ -BitKeeper/etc/* -BitKeeper/log/* -BitKeeper/tmp/* -BitKeeper/reader/* -BitKeeper/writer/* -BitKeeper/deleted/* -BitKeeper/triggers/* -PENDING/* -pubsub/pntemplates/pubsub/eng/web_link.txt -ephemerids/xaradmin.php.bak -ephemerids/xaradminapi.php.bak -ephemerids/xarinit.php.bak -ephemerids/xartables.php.bak -issues_032103.tar -issues_040903.tar -issues_041403.tar -issues_042303.tar -issues_042503.tar -converter.zip -.DS_Store diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok deleted file mode 100644 index fe59d1d41a..0000000000 --- a/BitKeeper/etc/logging_ok +++ /dev/null @@ -1,41 +0,0 @@ -Administrator@ctc113tch.nsp.bugs.local -BRUMDall@brumdall2m.bru.fsc.net -Dracos@numenor. -John.Cox@mcnabb. -Marie@george. -NukeGeek@xaraya.d2g.com -Scot.Gardner@ctc118-ws75.nsp.bugs.local -Scot.Gardner@ws75. -XarayaGeek@xaraya.d2g.com -andyv@andyv.plus.com -anon@numenor. -besfred@chimera.(none) -besfred@chimera.medusa -besfred@ganymed.medusa -besfred@server.medusa -bna0jcc@rmlt002799. -dracos@numenor. -dudleyc@bar. -dudleyc@bar.hursley.ibm.com -iansym@simian.asphyxia.com -jan@sasquatch.pulpcontent.com -marc@marclaptop. -marcel@hsdev.com -marcel@sasquatch.pulpcontent.com -mikespub@sasquatch.pulpcontent.com -miko@chris-dudleys-computer.local -miko@miko.homelinux.org -miko@power.dudleynet -miko@xaraya.com -mrb@duel.hsdev.com -nuncanada@h0ly. -rabbitt@shiva.nioka.org -rcave@lxwdev-1.schwabfoundation.org -root@projectx.(none) -root@xaraya.(none) -root@xaraya.d2g.com -rothfuss@lasagne.wg.abstrakt.ch -schrage@jack.iwr.uni-heidelberg.de -stego@shiva.nioka.org -stratagem@mynixbox.com -wb9tpg@www.pntest1.com diff --git a/BitKeeper/triggers/post-incoming.notice b/BitKeeper/triggers/post-incoming.notice deleted file mode 100644 index 06b91277e8..0000000000 --- a/BitKeeper/triggers/post-incoming.notice +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/sh - -# PROBLEMS with this trigger: -# - on bk push -a (merge changesets) the message is really meaningless -# and it seems there are other changesets listed in the message -# msgs given by bk: -# BitKeeper/triggers/post-incoming.notice: $BK_CSETLIST: ambiguous redirect -# BitKeeper/triggers/post-incoming.notice: [: -gt: unary operator expected - - -# Only run this script on the server -if [ $BK_SIDE != server ] -then exit 0 -fi - -# Only run this script on *this* server (the xaraya one) -THISHOST=`bk gethost` -if [ $THISHOST != sasquatch.pulpcontent.com ] -then exit 0 -fi - -# If we don't want to do anything set DRYRUN of NOTHING -# NOTHING is also set automatically when there is nothing to do -# DRYRUN is set when it was a test run (e.g. pull -n) -if [ X$BK_STATUS = XDRYRUN -o X$BK_STATUS = XNOTHING ] -then exit 0 -fi - -# url to web interface -REPO=$(basename ${BKD_ROOT}) -BKURL=http://www.xaraya.com:15000/$REPO - -# post-incoming event, send out notices, changes have -# already been applied so we don't need to test for -# CONFLICT variable. (see other trigger) - -# How many changesets are pushed? BK_CSETLIST maybe empty, but no harm done if it is. -NUMSETS=`wc -l < $BK_CSETLIST` -if [ $NUMSETS -gt 1 ] -then -CHANGETEXT="changesets were" -else -CHANGETEXT="changeset was" -fi -# Get the first changeset comment -CSCOMMENT=`bk changes -r+ -d':C:'` - -( -echo Changes were applied by ${BKD_USER} to the ${REPO} level ${BKD_LEVEL} repository. - -# What is the list of changesets which were incoming? -if [ X$BK_CSETLIST != X ] -then ( - echo "The following $CHANGETEXT applied:" - echo - bk changes -v - < $BK_CSETLIST - ) | sed 's/^/ /' - # FIXME: when pushing a merge changest this gives an ambigious redirect - # BK_CSETLIST is not empty we check for that, what's happening? - echo Links for the differences: - echo $(cat $BK_CSETLIST | xargs -n1 echo -e $BKURL/patch@ | sed 's/ //') -fi -) | mail -s "${NUMSETS} ${CHANGETEXT} pushed to ${REPO}: ${CSCOMMENT:0:40}..." xaraya_bk-notices@lists.xaraya.com \ No newline at end of file diff --git a/xaradmin/main.php b/xaradmin/main.php new file mode 100644 index 0000000000..2be3db2a4b --- /dev/null +++ b/xaradmin/main.php @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/xaradmin/modify.php b/xaradmin/modify.php new file mode 100644 index 0000000000..c4ffd289dd --- /dev/null +++ b/xaradmin/modify.php @@ -0,0 +1,62 @@ + + */ +/** + * Configure a logger + */ +function logconfig_admin_modify($args) +{ + if (!xarVar::fetch('logger', 'str', $logger, '', xarVar::NOT_REQUIRED)) return; + if (!xarVar::fetch('confirm', 'checkbox', $data['confirm'], false, xarVar::NOT_REQUIRED)) return; + if (!xarVar::fetch('exit', 'checkbox', $data['exit'], false, xarVar::NOT_REQUIRED)) return; + + if (empty($logger)) { + $msg = xarML('Invalid #(1) for #(2) function #(3)() in module #(4)', + 'item id', 'admin', 'modify', 'logconfig'); + xarErrorSet(XAR_USER_EXCEPTION, 'BAD_PARAM', + new SystemException($msg)); + return $msg; + } + + sys::import('modules.dynamicdata.class.objects.base'); + $objectname = 'logconfig_' . $logger; + $data['object'] = DataObjectMaster::getObject(['name' => $objectname]); + $data['object'] = xarMod::apiFunc('logconfig', 'admin', 'charge_loggerobject', array('logger' => $data['object'])); + + $data['tplmodule'] = 'logconfig'; + + if ($data['confirm']) { + + // Check for a valid confirmation key + if(!xarSec::confirmAuthKey()) return; + + // Get the data from the form + $isvalid = $data['object']->checkInput(); + + if (!$isvalid) { + // Bad data: redisplay the form with error messages + return xarTpl::module('logconfig','admin','modify', $data); + } else { + // Good data: save the data + xarMod::apiFunc('logconfig', 'admin', 'discharge_loggerobject', array('logger' => $data['object'])); + + if ($data['exit']) { + // Jump to the next page + xarController::redirect(xarController::URL('logconfig','admin','view')); + return true; + } + } + } + return $data; +} + +?> \ No newline at end of file diff --git a/xaradmin/modifyconfig.php b/xaradmin/modifyconfig.php new file mode 100644 index 0000000000..55c9ebe7d0 --- /dev/null +++ b/xaradmin/modifyconfig.php @@ -0,0 +1,84 @@ + + */ +/** + * Main configuration page for the logconfig module + * + */ + +// Use this version of the modifyconfig file when the module is not a utility module + + function logconfig_admin_modifyconfig() + { + // Security Check + if (!xarSecurity::check('AdminLogconfig')) return; + if (!xarVar::fetch('phase', 'str:1:100', $phase, 'modify', xarVar::NOT_REQUIRED, xarVar::PREP_FOR_DISPLAY)) return; + if (!xarVar::fetch('tab', 'str:1:100', $data['tab'], 'general', xarVar::NOT_REQUIRED)) return; + + $data['module_settings'] = xarMod::apiFunc('base','admin','getmodulesettings',array('module' => 'logconfig')); + $data['module_settings']->setFieldList('items_per_page, use_module_alias, module_alias_name, enable_short_urls'); + $data['module_settings']->getItem(); + + switch (strtolower($phase)) { + case 'modify': + default: + switch ($data['tab']) { + case 'general': + break; + case 'tab2': + break; + case 'tab3': + break; + default: + break; + } + + break; + + case 'update': + // Confirm authorisation code + if (!xarSec::confirmAuthKey()) return; + switch ($data['tab']) { + case 'general': + /* Remove this for now + $isvalid = $data['module_settings']->checkInput(); + if (!$isvalid) { + return xarTpl::module('logconfig','admin','modifyconfig', $data); + } else { + $itemid = $data['module_settings']->updateItem(); + } + */ + // The overall switch to enable logging + if (!xarVar::fetch('logenabled', 'int', $logenabled, 0, xarVar::NOT_REQUIRED)) return; + + // Update the config.system file + $variables = array('Log.Enabled' => $logenabled); + xarMod::apiFunc('installer','admin','modifysystemvars', array('variables' => $variables)); + + xarController::redirect(xarController::URL('logconfig', 'admin', 'modifyconfig', array('tab' => 'general'))); + break; + case 'tab2': + break; + case 'tab3': + break; + default: + break; + } + + xarResponse::redirect(xarController::URL('logconfig', 'admin', 'modifyconfig',array('tab' => $data['tab']))); + // Return + return true; + break; + + } + $data['authid'] = xarSec::genAuthKey(); + return $data; + } +?> diff --git a/xaradmin/overview.php b/xaradmin/overview.php new file mode 100644 index 0000000000..5dc3f40b19 --- /dev/null +++ b/xaradmin/overview.php @@ -0,0 +1,32 @@ + \ No newline at end of file diff --git a/xaradmin/view.php b/xaradmin/view.php new file mode 100644 index 0000000000..09c85057b2 --- /dev/null +++ b/xaradmin/view.php @@ -0,0 +1,45 @@ + + */ +/** + * View Loggers + * This will show an overview page with the currently defined loggers. + * @return array Data array for the template. + */ +function logconfig_admin_view() +{ + // Security check - important to do this as early as possible to avoid + // potential security holes or just too much wasted processing + if (!xarSecurity::check('AdminLogConfig')) return; + + // Whether or not the fallback logger is running + if (xarMod::apiFunc('logconfig','admin','islogon') && xarLog::fallbackPossible() && empty(xarLog::availables())) { + $data['fallbackOn'] = true; + } else { + $data['fallbackOn'] = false; + } + + // The name of the file the fallback logger writes to + $data['fallbackFile'] = xarLog::FallbackFile(); + + // The defined loggers + $definitions = xarMod::apiFunc('logconfig','admin','get_loggers'); + + sys::import('modules.dynamicdata.class.objects.base'); + foreach ($definitions as $logger) { + $data['loggers'][$logger['id']] = DataObjectMaster::getObject(['name' => $logger['object']]); + $data['loggers'][$logger['id']] = xarMod::apiFunc('logconfig', 'admin', 'charge_loggerobject', array('logger' => $data['loggers'][$logger['id']])); + } + return $data; +} + +?> \ No newline at end of file diff --git a/xaradminapi/charge_loggerobject.php b/xaradminapi/charge_loggerobject.php new file mode 100644 index 0000000000..08e48d2ae3 --- /dev/null +++ b/xaradminapi/charge_loggerobject.php @@ -0,0 +1,66 @@ + + */ +/** + * Get the saved values and insert them into an object + */ +function logconfig_adminapi_charge_loggerobject($args) +{ + if (!xarLog::configReadable()) die(xarML('Cannot read the configuration file')); + if (!isset($args['logger'])) die(xarML('No logger object passed')); + + // Get the $systemConfiguration array from the configuration file + require(xarLog::configFile()); + + // Get the available loggers + $availables = xarLog::availables(); + + // Get all the fields used by our loggers + $fields = xarMod::apiFunc('logconfig', 'admin', 'get_variables'); + + // Get the type of this logger + $loggertype = $args['logger']->properties['type']->value; + + // Get this logger's property names + $propertynames = array_keys($args['logger']->properties); + + // Run through each of the logger object's properties and get the saved value + $values = array(); + foreach ($propertynames as $propertyname) { + + if ($propertyname == 'state') { + // The state is different. It corresponds to whether or not the logger is in the list of available loggers + if (in_array($loggertype, $availables)) $value = 3; + else $value = 1; + } else { + $type = ucwords($loggertype); + if (!isset($fields[$propertyname])) continue; + $variable = $fields[$propertyname]; + + // The full address of how variables are stored in the $systemConfiguration array, e.g. Log.Simple.Filename + $address = 'Log.' . $type . '.' . $variable; + + if (isset($systemConfiguration[$address])) { + $value = $systemConfiguration[$address]; + } else { + $value = null; + } + } + // If the value != null, add it to the values to be loaded into the logger object + if (null != $value) $values[$propertyname] = $value; + } + // Load the values into the logger object + $args['logger']->setFieldValues($values, 1); + return $args['logger']; +} + +?> \ No newline at end of file diff --git a/xaradminapi/discharge_loggerobject.php b/xaradminapi/discharge_loggerobject.php new file mode 100644 index 0000000000..5950c54a3a --- /dev/null +++ b/xaradminapi/discharge_loggerobject.php @@ -0,0 +1,71 @@ + + */ +/** + * Save the values of a logger object to the configuration files + */ +function logconfig_adminapi_discharge_loggerobject($args) +{ + if (!isset($args['logger'])) die(xarML('No logger object passed')); + + if (!xarLog::configReadable()) die(xarML('Cannot read the configuration file')); + + // Load the configuration file + require(xarLog::configFile()); + + // This holds the values to be saved + $to_be_saved = array(); + // Get the loggers variables and their values + $variables = $args['logger']->getFieldValues(array(),1); + + // Remove the state: we handle that separately + $state = $variables['state']; + unset($variables['state']); + // Get the type + $type = ucwords($variables['type']); + // Get all the fields used by our loggers + $fields = xarMod::apiFunc('logconfig', 'admin', 'get_variables'); + + // Run through each of the object's properties and get the values to be saved + foreach ($variables as $variable => $value) { + if (!isset($fields[$variable])) continue; //die(xarML('Error getting the field associated with #(1)', $variable)); + $fieldname = $fields[$variable]; + $address = 'Log.' . $type . '.' . $fieldname; + + // If this variable exists in the configuration file, then add it to those to be saved + if (isset($systemConfiguration[$address])) { + $to_be_saved[$address] = $value; + } + } + // Save the values to the configuration file + xarMod::apiFunc('installer','admin','modifysystemvars', array('variables' => $to_be_saved, 'scope' => 'Log')); + + // Handle state property. + + // Get the available loggers + $availables = xarLog::availables(); + if ($state == 1) { + if (in_array($variables['type'], $availables)) { + if (($key = array_search($variables['type'], $availables)) !== false) { + unset($availables[$key]); + } + } + } elseif ($state == 3) { + if (!in_array($variables['type'], $availables)) array_push($availables, $variables['type']); + } + $active_loggers['Log.Available'] = implode(',', $availables); + // Save the values to the configuration file + xarMod::apiFunc('installer','admin','modifysystemvars', array('variables' => $active_loggers, 'scope' => 'System')); + return true; +} + +?> \ No newline at end of file diff --git a/xaradminapi/get_levels.php b/xaradminapi/get_levels.php new file mode 100644 index 0000000000..7f0edd2667 --- /dev/null +++ b/xaradminapi/get_levels.php @@ -0,0 +1,24 @@ + + */ +/** + * Gets the log levels Xaraya recognizes + */ +function logconfig_adminapi_get_levels() +{ + sys::import('xaraya.log.loggers.xarLogger'); + $levels = xarLogger::$levels; + + return $levels; +} + +?> \ No newline at end of file diff --git a/xaradminapi/get_loggers.php b/xaradminapi/get_loggers.php new file mode 100644 index 0000000000..3701ebf128 --- /dev/null +++ b/xaradminapi/get_loggers.php @@ -0,0 +1,32 @@ + + */ +/** + * A central registry of all our loggers + */ +function logconfig_adminapi_get_loggers() +{ + $loggers = array( + ['id' => 'error_log', 'name' => 'Error Log', 'object' => 'logconfig_errorlog'], + ['id' => 'html', 'name' => 'HTML', 'object' => 'logconfig_html'], + ['id' => 'javascript', 'name' => 'Javascript Log', 'object' => 'logconfig_javascript'], + ['id' => 'mail', 'name' => 'Mail', 'object' => 'logconfig_mail'], + ['id' => 'mozilla', 'name' => 'Mozilla', 'object' => 'logconfig_mozilla'], + ['id' => 'simple', 'name' => 'Simple', 'object' => 'logconfig_simple'], + ['id' => 'sql', 'name' => 'SQL', 'object' => 'logconfig_sql'], + ['id' => 'syslog', 'name' => 'System Log', 'object' => 'logconfig_syslog'], + ); + + return $loggers; +} + +?> \ No newline at end of file diff --git a/xaradminapi/get_variables.php b/xaradminapi/get_variables.php new file mode 100644 index 0000000000..b0208a9e37 --- /dev/null +++ b/xaradminapi/get_variables.php @@ -0,0 +1,38 @@ + + */ +/** + * A central registry of all the variables our loggers use + * + * The keys are the logger object properties, the values are the corresponding fields in the configuration file + */ +function logconfig_adminapi_get_variables() +{ + $vars = [ + 'filename' => 'Filename', + 'maxfilesize' => 'MaxFileSize', + 'loglevel' => 'Level', + 'mode' => 'Mode', + 'recipient' => 'Recipient', + 'sender' => 'Sender', + 'subject' => 'Subject', + 'timeformat' => 'Timeformat', + 'sqltable' => 'SQLTable', + 'facility' => 'Facility', + 'options' => 'Options', + 'sqltable' => 'SQLTable', + ]; + + return $vars; +} + +?> \ No newline at end of file diff --git a/xaradminapi/islogon.php b/xaradminapi/islogon.php new file mode 100644 index 0000000000..039f920612 --- /dev/null +++ b/xaradminapi/islogon.php @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/xardata/adminmenu-dat.xml b/xardata/adminmenu-dat.xml new file mode 100644 index 0000000000..9b3861f445 --- /dev/null +++ b/xardata/adminmenu-dat.xml @@ -0,0 +1,42 @@ + + + + + ManageLogConfig + + view + + view + View all loggers currently configured + + + + AdminAssyria + + modifyconfig + + modifyconfig + Modify the configuration settings of this module + + + + + main + overview + + main + Short documentation of this module + + + + \ No newline at end of file diff --git a/xardata/logconfig_errorlog-def.xml b/xardata/logconfig_errorlog-def.xml new file mode 100644 index 0000000000..fb2531c026 --- /dev/null +++ b/xardata/logconfig_errorlog-def.xml @@ -0,0 +1,70 @@ + + 200 + + 6969 + 3 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4289 + + static + errorlog + + 33 + 2 + + + + 4290 + + textarea + This logger will write log messages to the web server's error log. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4294 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 7 + + + + 4453 + + checkboxlist + + + 33 + 8 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4296 + + dropdown + 1 + + 33 + 9 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_html-def.xml b/xardata/logconfig_html-def.xml new file mode 100644 index 0000000000..b18045b8b8 --- /dev/null +++ b/xardata/logconfig_html-def.xml @@ -0,0 +1,100 @@ + + 198 + + 6969 + 1 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4274 + + static + html + + 33 + 2 + + + + 4275 + + textarea + This logger will put the log into a file with the HTML Format. You will need to enter its path and name. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4276 + + textbox + var/logs/htmllog.html + + 33 + 4 + 1:40 + + + 4277 + + integerbox + 644 + + 33 + 5 + 0:777 + + + 4278 + + integerbox + 5000000 + + 33 + 6 + 0:104857600 + + + 4279 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 7 + + + + 4453 + + checkboxlist + + + 33 + 8 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4281 + + dropdown + 1 + + 33 + 9 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_javascript-def.xml b/xardata/logconfig_javascript-def.xml new file mode 100644 index 0000000000..a76e0511aa --- /dev/null +++ b/xardata/logconfig_javascript-def.xml @@ -0,0 +1,70 @@ + + 199 + + 6969 + 2 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4283 + + static + javascript + + 33 + 2 + + + + 4284 + + textarea + This logger will open a helper browser window, where debug information will be displayed. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4285 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 4 + + + + 4453 + + checkboxlist + + + 33 + 5 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4287 + + dropdown + 1 + + 33 + 6 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_mail-def.xml b/xardata/logconfig_mail-def.xml new file mode 100644 index 0000000000..7ab531c028 --- /dev/null +++ b/xardata/logconfig_mail-def.xml @@ -0,0 +1,100 @@ + + 200 + + 6969 + 3 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4289 + + static + mail + + 33 + 2 + + + + 4290 + + textarea + This logger will send all log messages thru e-mail. It is recommended to use this logger only for the lowest log levels (e.g., 'Emergency', 'Alert') and not for the highest (e.g., 'Info', 'Debug'), to avoid sending large numbers of emails. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4291 + + textbox + xaraya-log@site.com + + 33 + 4 + 1:40 + + + 4292 + + textbox + yourself@here.com + + 33 + 5 + 1:40 + + + 4293 + + textbox + [XARAYA_LOG] + + 33 + 6 + 1:40 + + + 4294 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 7 + + + + 4453 + + checkboxlist + + + 33 + 8 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4296 + + dropdown + 1 + + 33 + 9 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_mozilla-def.xml b/xardata/logconfig_mozilla-def.xml new file mode 100644 index 0000000000..2c2badefed --- /dev/null +++ b/xardata/logconfig_mozilla-def.xml @@ -0,0 +1,70 @@ + + 201 + + 6969 + 4 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4298 + + static + mozilla + + 33 + 2 + + + + 4299 + + textarea + This logger will open a helper browser window, where debug information will be displayed. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4300 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 4 + + + + 4453 + + checkboxlist + + + 33 + 5 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4302 + + dropdown + 1 + + 33 + 6 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_simple-def.xml b/xardata/logconfig_simple-def.xml new file mode 100644 index 0000000000..da7bb63644 --- /dev/null +++ b/xardata/logconfig_simple-def.xml @@ -0,0 +1,100 @@ + + 202 + + 6969 + 5 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4304 + + static + simple + + 33 + 2 + + + + 4305 + + textarea + This logger will put the log into a file. You will need to enter its path and name. This logger sends its output to a text file in plain text, similar to a server log. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4306 + + textbox + var/logs/simplelog.txt + + 33 + 4 + 1:40 + + + 4307 + + integerbox + 644 + + 33 + 5 + + + + 4308 + + integerbox + 5000000 + + 33 + 6 + + + + 4309 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 7 + + + + 4453 + + checkboxlist + + + 33 + 8 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4311 + + dropdown + 1 + + 33 + 9 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_sql-def.xml b/xardata/logconfig_sql-def.xml new file mode 100644 index 0000000000..41a6a24acf --- /dev/null +++ b/xardata/logconfig_sql-def.xml @@ -0,0 +1,80 @@ + + 203 + + 6969 + 6 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4313 + + static + sql + + 33 + 2 + + + + 4314 + + textarea + This logger will log messages into a SQL table using Xaraya's database. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4315 + + textbox + xar_log_messages + + 33 + 4 + 1:40 + + + 4316 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 5 + + + + 4453 + + checkboxlist + + + 33 + 6 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4318 + + dropdown + 1 + + 33 + 7 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/logconfig_syslog-def.xml b/xardata/logconfig_syslog-def.xml new file mode 100644 index 0000000000..9880aeb684 --- /dev/null +++ b/xardata/logconfig_syslog-def.xml @@ -0,0 +1,90 @@ + + 204 + + 6969 + 7 + DataObject + auto + itemid + 0 + a:0:{} + false + relational + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:1:{i:0;a:2:{i:0;s:0:"";i:1;s:0:"";}} + a:0:{} + + + 4320 + + static + syslog + + 33 + 2 + + + + 4321 + + textarea + This logger will send all log messages to your own operational system logging system. Please look at php.net manual for the function openlog to figure out how to properly configure this logger. + + 33 + 3 + a:3:{s:12:"display_rows";s:1:"4";s:15:"display_columns";s:2:"30";s:14:"display_layout";s:7:"default";} + + + 4322 + + textbox + LOG_LOCAL0 + + 33 + 4 + 1:40 + + + 4323 + + textbox + LOG_CONS | LOG_ODELAY | LOG_PID + + 33 + 5 + 1:40 + + + 4324 + + dateformat + %Y/%m/%d %H:%M:%S + + 33 + 6 + + + + 4453 + + checkboxlist + + + 33 + 7 + a:4:{s:15:"display_columns";s:1:"3";s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:23:"initialization_function";s:53:"xarMod::apiFunc('logconfig' , 'admin' , 'get_levels')";} + + + 4326 + + dropdown + 1 + + 33 + 8 + a:3:{s:12:"display_rows";s:1:"0";s:14:"display_layout";s:7:"default";s:22:"initialization_options";s:20:"1,Inactive;3,Active;";} + + + \ No newline at end of file diff --git a/xardata/modifyconfig-dat.xml b/xardata/modifyconfig-dat.xml new file mode 100644 index 0000000000..37ae22d13f --- /dev/null +++ b/xardata/modifyconfig-dat.xml @@ -0,0 +1,14 @@ + + + + Choose an area to configure + tab + + + + general + modifyconfig + + + + diff --git a/xarinit.php b/xarinit.php new file mode 100644 index 0000000000..8d6e6863ce --- /dev/null +++ b/xarinit.php @@ -0,0 +1,83 @@ + $module, 'objects' => $objects))) return; + + xarMasks::register('ManageLogConfig','All','logconfig','Item','All','ACCESS_DELETE'); + xarMasks::register('AdminLogConfig','All','logconfig','Item','All','ACCESS_ADMIN'); + + // Initialisation successful + return logconfig_upgrade('0.1.1'); +} + +/** + * upgrade the logconfig module from an old version + * This function can be called multiple times + * @param string oldversion + * @return bool true on success + */ +function logconfig_upgrade($oldversion) +{ + // Upgrade dependent on old version number + switch($oldversion) { + case '0.1.0': + $logConfigFile = sys::varpath() . '/cache/config.log.php'; + if (file_exists($logConfigFile)) unlink($logConfigFile); + //When people turn it on again it will produce the config in the + //new directory, no need to do it in here. + case '0.1.1': + break; + } + + // Update successful + return true; +} + +/** + * delete the logconfig module + * This function is only ever called once during the lifetime of a particular + * module instance + * @return bool true on success + */ +function logconfig_delete() +{ + $module = 'logconfig'; + return xarMod::apiFunc('modules','admin','standarddeinstall',array('module' => $module)); +} + +?> \ No newline at end of file diff --git a/xartables.php b/xartables.php new file mode 100644 index 0000000000..4617fc0359 --- /dev/null +++ b/xartables.php @@ -0,0 +1,31 @@ + \ No newline at end of file diff --git a/xartemplates/admin-main.xt b/xartemplates/admin-main.xt new file mode 100644 index 0000000000..709cd7bca7 --- /dev/null +++ b/xartemplates/admin-main.xt @@ -0,0 +1,174 @@ + + + + + + +
+ Official Icon + #$label# +

Overview

+

What is it?

+ +

+ The LogConfig module lets you configure the Xaraya logging system. It is essentially a wrapper for the logging parts of the configuration files found at +

    +
  • + var/config.system.php +
  • +
  • + var/logs/config.log.php +
  • +
+ In other words, anything this module does can be done by directly editing those two files. Nonetheless, unless you know what you're doing, using this module to configure logging is the recommended way to go. +

+ +

How to use it?

+

You can:

+
    +
  • + List the loggers that are currently configured. From here you can then edit the settings for each logger, including whether or not it is active. Note that an active logger will not do anything until you enable loggind in the modifyconfig page (see below). +
  • +
  • + Turn Xaraya logging on/off globally. This makes Xaraya log (or not) according to the loggers configured. This setting in the modifyconfig page is identical to the setting found under the logging tab in the modifyconfig page of the base module. The latter can be found here. +
  • +
+

+ The loggers are shipped with the Xaraya core and are located in lib/xaraya/log/loggers. You can, of course, run several loggers simultaneously, but be aware that this many degrade performance, not to mention using up disk space faster for loggers that write to disk or database. +

+

+ The logging system depends on the timezone settings found here. You should set the Host Timezone to the timezone you want the timestamps of the logged messages to show. +

+ +

Fallback System:

+

If logging is set to on in this module and none of the loggers are active, then there is a fallback system that will log to a text file. This fallback can be configured under the logging tab in the modifyconfig page of the base module, found here. +

+

+ Message levels +

+

+ The Xaraya loggers recognize the following message levels. Each logger can be configured to track one or more of these message levels. +

+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + Numeric Value + + Application +
EMERGENCY1Tracks errors that call for immediate intervention
ALERT2Tracks errors that call for intervention
CRITICAL3Tracks errors that result in major consequences for processing
ERROR4Tracks behavior that is unexpected or undesired, with minor consequences for processing
WARNING5Tracks anomalities or abnormal behavior without consequences for processing
NOTICE6Tracks high level core processes and main module processes
INFO7Tracks low level core and module processes
DEBUG8Used for fine grained debugging
+
+
+

+ Available loggers +

+
    +
  • The errorlog logger: writes log data to the web server's error log
  • +
  • The html logger: writes log data to an HTML file
  • +
  • The javascript logger: opens a debug window with the log information
  • +
  • The mail logger: sends log data to a recipient via email
  • +
  • The mozilla logger: opens a debug window with the log information
  • +
  • The simple logger: writes log data to a text file
  • +
  • The sql logger: writes log data to a database table
  • +
  • The syslog logger: write log data to server logs
  • +
+

+ The loggers are all subclasses of a parent xarLogger class, found at lib/xaraya/log/loggers/xarLogger.php. This class is responsible for: +

+
    +
  • Defining the log message levels that Xaraya uses (see above)
  • +
  • Defining the timestamp formats that are used in displays.
  • +
  • Creating a unique universal identifier (UUID) based on PHP's random_bytes function. This is used by several of the loggers to differentiate between one pageview and the next.
  • +
+

+ Notes on the errorlog logger +

+

+ This logger writes to PHP's error log, which can be accessed by the PHP funcion error_log(), as described here. +

+

+ Notes on the mail logger +

+

+ The mail logger will send you an email with the error message and some additional information. You cannot edit the lay-out and content of the message via the mail templates as the message is created by PHP code. +

+

+ Because of the vagaries and continuously changing (improving) standards for email and the major email providers, it is recommended that you first test Xaraya's email functionality in your environment and make sure everything works. You can do this by sending test messages from the mail module. Helpful information can also be had by setting the mail module's debug functionality, which is found on the mail module's modifyconfig page here. +

+

+ Notes on the SQL logger +

+

+ The SQL logger needs a database table to write its data to. This table should be added to your database. For MySQL you can use the following code: +

+
+                CREATE TABLE `xar_log_messages` (
+                  `id` int(10) NOT NULL,
+                  `ident` varchar(32) NOT NULL,
+                  `logtime` varchar(255) NOT NULL DEFAULT '',
+                  `priority` tinyint(4) NOT NULL DEFAULT '0',
+                  `message` text NOT NULL
+                  PRIMARY KEY  (`id`)
+                );
+                
+

+ The SQL logger will log all messages to this database table. Currently, there is no interface to manage the entries. In configuring this logger, make sure that your entry for the SQL Table parameter corresponds to the name of the database table you have created. +

+

+ Notes on the syslog logger +

+

+ Depending on its configuration, this logger writes to a server log. as described here. It should be noted that different server operating systems have different types of logs. We make no claims about which of this loggers configurations will work in any given case. +

+

+ Further Information +

+

+ To be added on occasion! +

+

+  LogConfig Module Overview
 Version 1.0.0  2022-5-01 +

+
+
\ No newline at end of file diff --git a/xartemplates/admin-modify.xt b/xartemplates/admin-modify.xt new file mode 100644 index 0000000000..c8041ae2bf --- /dev/null +++ b/xartemplates/admin-modify.xt @@ -0,0 +1,34 @@ + + + + + + +
+

Configure a Logger

+ +
+
+ Logger Configuration + +
+
+
+
+
+ + + + + + Cancel +   + Update +   + Update and Exit + +
+
+
+
+
\ No newline at end of file diff --git a/xartemplates/admin-modifyconfig.xt b/xartemplates/admin-modifyconfig.xt new file mode 100644 index 0000000000..b77328bfb4 --- /dev/null +++ b/xartemplates/admin-modifyconfig.xt @@ -0,0 +1,58 @@ + + + + + + +
+

+ Modify Configuration +

+ 'modifyconfig' + + + +
+ +
+ Enable Logging + + + array( + array('id' => 0, 'name' => xarML('No')), + array('id' => 1, 'name' => xarML('Yes')), + ) + + xarSystemVars::get(sys::CONFIG, 'Log.Enabled') + +
+ + + +
+ + + + + + - - - - - - - - - - - - - - - - - - - Begin Tab3 Options - - - - - - - - - - - - - - - - - - - + + +
+
+
\ No newline at end of file diff --git a/xartemplates/admin-view.xt b/xartemplates/admin-view.xt new file mode 100644 index 0000000000..ce43e0ceee --- /dev/null +++ b/xartemplates/admin-view.xt @@ -0,0 +1,70 @@ + + + + + + +
+

List of Loggers

+ +
+ + + + + + + + + + $logger->properties + + + + + + + + +
TypeDescriptionStateAction
+ + + + + + + Configure +
+
+ + + There is a fallback mechanism which will log to file #(1) if logging is enabled even if no loggers are active, so admins can still log if unable to install/use the logconfig module. + #$fallbackFile# + +
+ For this fallback mechanism to work, it is necessary for this file to exist and be writable by the http server user. It also requires that logging be enabled but all available loggers be inactive. + +
+ Logging is currently enabled +
+ +
+ Logging is currently disabled +
+
+ +
+ + Because the file #(1) is present and writable, it is being used as the fallback mechanism for logging purposes. + #$fallbackFile# + +
+ +
+ Fallback logging is currently not active. +
+
+
+ +
+
\ No newline at end of file diff --git a/xartemplates/includes/admin-mod-head.xt b/xartemplates/includes/admin-mod-head.xt new file mode 100644 index 0000000000..3aecd4c500 --- /dev/null +++ b/xartemplates/includes/admin-mod-head.xt @@ -0,0 +1,13 @@ + + +
+ + + + + LogConfig Administration + + + +
+
\ No newline at end of file diff --git a/xartemplates/includes/logging_capability.xt b/xartemplates/includes/logging_capability.xt new file mode 100644 index 0000000000..3ece694e28 --- /dev/null +++ b/xartemplates/includes/logging_capability.xt @@ -0,0 +1,62 @@ + + + is_readable(sys::varpath() . '/config.system.php') + is_readable(sys::varpath() . '/logs/config.log.php') + is_writeable(sys::varpath() . '/config.system.php') + is_writeable(sys::varpath() . '/logs/config.log.php') + + +
+ The system configuration file config.system.php is readable. +
+ +
+ The system configuration file config.system.php is not readable. +
+
+ +
+ The system configuration file config.system.php is writeable. +
+ +
+ The system configuration file config.system.php is not writeable. +
+
+ +
+ The logging configuration file config.log.php is readable. +
+ +
+ The logging configuration file config.log.php is not readable. +
+
+ +
+ The logging configuration file config.log.php is writeable. +
+ +
+ The logging configuration file config.log.php is not writeable. +
+
+ + For best performance both files should be readable and writeable + +
+
+ With this setup: +
+
+ + You cannot turn logging on or off + + You can turn logging on or off, and you can configure and enable fallback logging. You cannot run any of the loggers. + + You can turn logging on or off, and you can configure and enable fallback logging. You can also run the different loggers as they are, but you cannot configure them. + + You can turn logging on or off, and you can configure and enable fallback logging. You can also configure and run the different loggers. + +
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_errorlog.xt b/xartemplates/objects/showform-logconfig_errorlog.xt new file mode 100644 index 0000000000..9848d6a230 --- /dev/null +++ b/xartemplates/objects/showform-logconfig_errorlog.xt @@ -0,0 +1,56 @@ + + +
+
+ Logger +
+
+ Errorlog Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_html.xt b/xartemplates/objects/showform-logconfig_html.xt new file mode 100644 index 0000000000..e205d0ad4c --- /dev/null +++ b/xartemplates/objects/showform-logconfig_html.xt @@ -0,0 +1,83 @@ + + +
+
+ Logger +
+
+ HTML Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ File + +
+
+ +
+
+
+
+ File mode + +
+
+ +
+
+
+
+ Maximum File Size + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_javascript.xt b/xartemplates/objects/showform-logconfig_javascript.xt new file mode 100644 index 0000000000..5cb3a374c8 --- /dev/null +++ b/xartemplates/objects/showform-logconfig_javascript.xt @@ -0,0 +1,56 @@ + + +
+
+ Logger +
+
+ Javascript Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_mail.xt b/xartemplates/objects/showform-logconfig_mail.xt new file mode 100644 index 0000000000..e4f18825dc --- /dev/null +++ b/xartemplates/objects/showform-logconfig_mail.xt @@ -0,0 +1,83 @@ + + +
+
+ Logger +
+
+ Mail Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ Sender + +
+
+ +
+
+
+
+ Recipient + +
+
+ +
+
+
+
+ Subject + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_mozilla.xt b/xartemplates/objects/showform-logconfig_mozilla.xt new file mode 100644 index 0000000000..a2c8da9db2 --- /dev/null +++ b/xartemplates/objects/showform-logconfig_mozilla.xt @@ -0,0 +1,56 @@ + + +
+
+ Logger +
+
+ Mozilla Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_simple.xt b/xartemplates/objects/showform-logconfig_simple.xt new file mode 100644 index 0000000000..b82c8e7556 --- /dev/null +++ b/xartemplates/objects/showform-logconfig_simple.xt @@ -0,0 +1,83 @@ + + +
+
+ Logger +
+
+ Simple Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ File + +
+
+ +
+
+
+
+ File mode + +
+
+ +
+
+
+
+ Maximum File Size + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_sql.xt b/xartemplates/objects/showform-logconfig_sql.xt new file mode 100644 index 0000000000..c30d55b86f --- /dev/null +++ b/xartemplates/objects/showform-logconfig_sql.xt @@ -0,0 +1,65 @@ + + +
+
+ Logger +
+
+ SQL Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ SQL Table + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xartemplates/objects/showform-logconfig_syslog.xt b/xartemplates/objects/showform-logconfig_syslog.xt new file mode 100644 index 0000000000..1ee523fa4d --- /dev/null +++ b/xartemplates/objects/showform-logconfig_syslog.xt @@ -0,0 +1,89 @@ + + +
+
+ Logger +
+
+ Syslog Logger +
+
+
+
+ Type + +
+
+ +
+
+
+
+ Description + +
+
+ +
+
+
+
+ Facility + +
+
+ + array( + array('id' => 'LOG_AUTH', 'name' => 'LOG_AUTH'), + array('id' => 'LOG_AUTHPRIV', 'name' => 'LOG_AUTHPRIV'), + array('id' => 'LOG_CRON', 'name' => 'LOG_CRON'), + array('id' => 'LOG_DAEMON', 'name' => 'LOG_DAEMON'), + array('id' => 'LOG_KERN', 'name' => 'LOG_KERN'), + array('id' => 'LOG_LPR', 'name' => 'LOG_LPR'), + array('id' => 'LOG_MAIL', 'name' => 'LOG_MAIL'), + array('id' => 'LOG_NEWS', 'name' => 'LOG_NEWS'), + array('id' => 'LOG_SYSLOG', 'name' => 'LOG_SYSLOG'), + array('id' => 'LOG_USER', 'name' => 'LOG_USER'), + array('id' => 'LOG_UUCP', 'name' => 'LOG_UUCP'), + ) + + +
+
+
+
+ Options + +
+
+ +
+
+
+
+ Time Format + +
+
+ +
+
+
+
+ Log Levels + +
+
+ +
+
+
+
+ State + +
+
+ +
+
+
\ No newline at end of file diff --git a/xarversion.php b/xarversion.php new file mode 100644 index 0000000000..6ced93673d --- /dev/null +++ b/xarversion.php @@ -0,0 +1,37 @@ + + */ +$modversion['name'] = 'Log Configuration Module'; +$modversion['id'] = '6969'; +$modversion['version'] = '1.0.0'; +$modversion['displayname'] = xarML('LogConfig'); +$modversion['description'] = 'Module for Configuration the Logging System'; +$modversion['credits'] = 'xardocs/credits.txt'; +$modversion['help'] = 'xardocs/help.txt'; +$modversion['changelog'] = 'xardocs/changelog.txt'; +$modversion['license'] = 'xardocs/license.txt'; +$modversion['official'] = 1; +$modversion['author'] = 'nuncanada'; +$modversion['contact'] = 'http://www.xaraya.com/'; +$modversion['admin'] = 1; +$modversion['user'] = 0; +$modversion['class'] = 'Admin'; +$modversion['category'] = 'System'; +$modversion['dependency'] = array(); +$modversion['dependencyinfo'] = array( + 0 => array( + 'name' => 'Xaraya Core', + 'version_ge' => '2.4.0' + ), + ); + +?> \ No newline at end of file