From 6286f9bfaff111768dd3a67178fa609737b6a141 Mon Sep 17 00:00:00 2001 From: JT Smith Date: Tue, 20 Nov 2001 03:49:00 +0000 Subject: [PATCH] WebGUI 2.4.0 release --- docs/create.sql | 103 +- docs/credits.txt | 16 +- docs/gotcha.txt | 33 + docs/install.txt | 11 +- docs/legal.txt | 26 +- docs/license.txt | 4 + docs/previousVersion.sql | 309 ++++- docs/upgrades/upgrade_2.3.4-2.4.0.sql | 1076 +++++++++++++++++ lib/WebGUI.pm | 3 +- lib/WebGUI/Discussion.pm | 172 +++ lib/WebGUI/Macro.pm | 15 + lib/WebGUI/Macro/At_username.pm | 5 +- lib/WebGUI/Macro/Backslash_pageUrl.pm | 5 +- lib/WebGUI/Macro/C_crumbTrail.pm | 6 +- lib/WebGUI/Macro/Carat_carat.pm | 27 - lib/WebGUI/Macro/D_date.pm | 16 +- lib/WebGUI/Macro/H_homeLink.pm | 18 +- lib/WebGUI/Macro/Hash_userId.pm | 5 +- lib/WebGUI/Macro/L_loginBox.pm | 25 +- lib/WebGUI/Macro/M_currentMenuVertical.pm | 18 +- lib/WebGUI/Macro/P_previousMenuVertical.pm | 18 +- lib/WebGUI/Macro/S_specificMenuVertical.pm | 22 +- lib/WebGUI/Macro/Splat_random.pm | 16 +- lib/WebGUI/Macro/T_topMenuVertical.pm | 18 +- lib/WebGUI/Macro/a_account.pm | 16 +- lib/WebGUI/Macro/c_companyName.pm | 5 +- lib/WebGUI/Macro/e_companyEmail.pm | 5 +- lib/WebGUI/Macro/m_currentMenuHorizontal.pm | 20 +- lib/WebGUI/Macro/p_previousMenuHorizontal.pm | 21 +- lib/WebGUI/Macro/r_printable.pm | 36 +- lib/WebGUI/Macro/s_specificMenuHorizontal.pm | 22 +- lib/WebGUI/Macro/t_topMenuHorizontal.pm | 20 +- lib/WebGUI/Macro/u_companyUrl.pm | 5 +- lib/WebGUI/MessageLog.pm | 48 + lib/WebGUI/Operation.pm | 1 - lib/WebGUI/Operation/Account.pm | 126 +- lib/WebGUI/Operation/Group.pm | 29 +- lib/WebGUI/Operation/Style.pm | 40 +- lib/WebGUI/Operation/Submission.pm | 88 -- lib/WebGUI/Operation/User.pm | 31 +- lib/WebGUI/Utility.pm | 45 +- lib/WebGUI/Widget/ExtraColumn.pm | 2 +- lib/WebGUI/Widget/FAQ.pm | 4 +- lib/WebGUI/Widget/MessageBoard.pm | 125 +- lib/WebGUI/Widget/SQLReport.pm | 4 +- lib/WebGUI/Widget/SiteMap.pm | 92 +- lib/WebGUI/Widget/UserSubmission.pm | 109 +- testEnvironment.pl | 19 +- {extras => www/extras}/WebGUI.js | 0 {extras => www/extras}/attachment.gif | Bin {extras => www/extras}/become.gif | Bin {extras => www/extras}/calendar.html | 0 {extras => www/extras}/colorPicker.gif | Bin {extras => www/extras}/colorPicker.html | 0 {extras => www/extras}/copy.gif | Bin {extras => www/extras}/cut.gif | Bin {extras => www/extras}/delete.gif | Bin {extras => www/extras}/downArrow.gif | Bin {extras => www/extras}/edit.gif | Bin {extras => www/extras}/help.gif | Bin {extras => www/extras}/ieEdit.html | 0 {extras => www/extras}/ieEdit.js | 0 {extras => www/extras}/jumpDown.gif | Bin {extras => www/extras}/jumpUp.gif | Bin {extras => www/extras}/leftArrow.gif | Bin {extras => www/extras}/nonIeEdit.html | 0 {extras => www/extras}/nonIeEdit.js | 0 {extras => www/extras}/pbs.gif | Bin {extras => www/extras}/plainBlackSoftware.gif | Bin {extras => www/extras}/rightArrow.gif | Bin {extras => www/extras}/spacer.gif | Bin {extras => www/extras}/toolbar.gif | Bin {extras => www/extras}/upArrow.gif | Bin {extras => www/extras}/viewer.html | 0 74 files changed, 2332 insertions(+), 548 deletions(-) create mode 100644 docs/gotcha.txt create mode 100644 docs/upgrades/upgrade_2.3.4-2.4.0.sql create mode 100644 lib/WebGUI/Discussion.pm delete mode 100644 lib/WebGUI/Macro/Carat_carat.pm create mode 100644 lib/WebGUI/MessageLog.pm delete mode 100644 lib/WebGUI/Operation/Submission.pm rename {extras => www/extras}/WebGUI.js (100%) rename {extras => www/extras}/attachment.gif (100%) rename {extras => www/extras}/become.gif (100%) rename {extras => www/extras}/calendar.html (100%) rename {extras => www/extras}/colorPicker.gif (100%) rename {extras => www/extras}/colorPicker.html (100%) rename {extras => www/extras}/copy.gif (100%) rename {extras => www/extras}/cut.gif (100%) rename {extras => www/extras}/delete.gif (100%) rename {extras => www/extras}/downArrow.gif (100%) rename {extras => www/extras}/edit.gif (100%) rename {extras => www/extras}/help.gif (100%) rename {extras => www/extras}/ieEdit.html (100%) rename {extras => www/extras}/ieEdit.js (100%) rename {extras => www/extras}/jumpDown.gif (100%) rename {extras => www/extras}/jumpUp.gif (100%) rename {extras => www/extras}/leftArrow.gif (100%) rename {extras => www/extras}/nonIeEdit.html (100%) rename {extras => www/extras}/nonIeEdit.js (100%) rename {extras => www/extras}/pbs.gif (100%) rename {extras => www/extras}/plainBlackSoftware.gif (100%) rename {extras => www/extras}/rightArrow.gif (100%) rename {extras => www/extras}/spacer.gif (100%) rename {extras => www/extras}/toolbar.gif (100%) rename {extras => www/extras}/upArrow.gif (100%) rename {extras => www/extras}/viewer.html (100%) diff --git a/docs/create.sql b/docs/create.sql index 7b39edfaa..682c52056 100644 --- a/docs/create.sql +++ b/docs/create.sql @@ -242,7 +242,10 @@ CREATE TABLE SQLReport ( CREATE TABLE SiteMap ( widgetId int(11) NOT NULL default '0', startAtThisLevel int(11) default NULL, - showOnlyThisLevel int(11) default NULL, + depth int(11) NOT NULL default '0', + indent int(11) NOT NULL default '5', + bullet varchar(30) NOT NULL default '·', + lineSpacing int(11) NOT NULL default '1', PRIMARY KEY (widgetId) ) TYPE=MyISAM; @@ -250,7 +253,7 @@ CREATE TABLE SiteMap ( # Dumping data for table 'SiteMap' # -INSERT INTO SiteMap VALUES (-1,0,0); +INSERT INTO SiteMap VALUES (-1,0,0,5,'·',1); # # Table structure for table 'SyndicatedContent' @@ -278,6 +281,7 @@ CREATE TABLE UserSubmission ( groupToContribute int(11) default NULL, submissionsPerPage int(11) NOT NULL default '50', defaultStatus varchar(30) default 'Approved', + groupToApprove int(11) NOT NULL default '4', PRIMARY KEY (widgetId) ) TYPE=MyISAM; @@ -310,6 +314,29 @@ CREATE TABLE UserSubmission_submission ( # +# +# Table structure for table 'discussion' +# + +CREATE TABLE discussion ( + messageId int(11) NOT NULL default '0', + rid int(11) default NULL, + widgetId int(11) default NULL, + pid int(11) default NULL, + userId int(11) default NULL, + username varchar(30) default NULL, + subject varchar(255) default NULL, + message text, + dateOfPost int(11) default NULL, + subId int(11) default NULL, + PRIMARY KEY (messageId) +) TYPE=MyISAM; + +# +# Dumping data for table 'discussion' +# + + # # Table structure for table 'groupings' # @@ -404,24 +431,24 @@ INSERT INTO help VALUES (15,'WebGUI','English','Delete','Group','As the function INSERT INTO help VALUES (16,'WebGUI','English','Add/Edit','Style','Styles are WebGUI macro enabled. See Using Macros for more information.\r\n\r\nStyle Name\r\nA unique name to describe what this style looks like at a glance. The name has no effect on the actual look of the style.\r\n\r\nHeader\r\nThe header is the start of the look of your site. It is helpful to look at your design and cut it into three pieces. The top and left of your design is the header. The center part is the content, and the right and bottom is the footer. Cut the HTML from your header and paste it in the space provided.\r\n\r\nIf you are in need of assistance for creating a look for your site, or if you need help cutting apart your design, Plain Black Software provides support services for a small fee.\r\n\r\nMany people will add WebGUI macros to their header for automated navigation, and other features.\r\n\r\nFooter\r\nThe footer is the end of the look for your site. It is the right and bottom portion of your design. You may also place WebGUI macros in your footer.\r\n\r\nStyle Sheet\r\nPlace your style sheet entries here. Style sheets are used to control colors, sizes, and other properties of the elements on your site. See Using Style Sheets for more information.\r\n\r\nAdvanced Users: for greater performance create your stylesheet on the file system (call it something like webgui.css) and add an entry like this to this area: \r\n<link href=\"/webgui.css\" rel=\"stylesheet\" rev=\"stylesheet\" type=\"text/css\">','4,5'); INSERT INTO help VALUES (17,'WebGUI','English','Add/Edit','Group','See Manage Group for a description of grouping functions and the default groups.\r\n\r\nGroup Name\r\nA name for the group. It is best if the name is descriptive so you know what it is at a glance.\r\n\r\nDescription\r\nA longer description of the group so that other admins and content managers (or you if you forget) will know what the purpose of this group is.','0'); INSERT INTO help VALUES (24,'WebGUI','English','Edit','Miscellaneous Settings','Not Found Page\r\nIf a page that a user requests is not found in the system, the user can be redirected to the home page or to an error page where they can attempt to find what they were looking for. You decide which is better for your users.\r\n\r\nSession Timeout\r\nThe time (in seconds) that a user session remains active (before needing to log in again). This timeout is reset each time a visitor hits a page. Therefore if you set the timeout for 8 hours, a user would have to log in again if s/he hadn\'t visited the site for 8 hours.\r\n\r\n1800 = half hour\r\n3600 = 1 hour\r\n28000 = 8 hours\r\n86400 = 1 day\r\n604800 = 1 week\r\n1209600 = 2 weeks\r\n','6'); -INSERT INTO help VALUES (18,'WebGUI','English','Using','Style Sheets','Cascading Style Sheets (CSS) are a great way to manage the look and feel of any web site. They are used extensively in WebGUI.\r\n\r\nIf you are unfamiliar with how to use CSS, Plain Black Software provides training classes on XHTML and CSS. Alternatively, Bradsoft makes an excellent CSS editor called Top Style.\r\n\r\nThe following is a list of classes used to control the look of WebGUI:\r\n\r\nA\r\nThe links throughout the style.\r\n\r\nBODY\r\nThe default setup of all pages within a style.\r\n\r\nH1\r\nThe headers on every page.\r\n\r\n.accountOptions\r\nThe links that appear under the login and account update forms.\r\n\r\n.adminBar \r\nThe bar that appears at the top of the page when you\'re in admin mode.\r\n\r\n.content\r\nThe main content area on all pages of the style.\r\n\r\n.crumbTrail \r\nThe crumb trail (if you\'re using that macro).\r\n\r\n.eventTitle \r\nThe title of an individual event.\r\n\r\n.faqQuestion\r\nAn F.A.Q. question. To distinguish it from an answer.\r\n\r\n.formDescription \r\nThe tags on all forms next to the form elements. \r\n\r\n.formSubtext \r\nThe tags below some form elements.\r\n\r\n.highlight \r\nDenotes a highlighted item, such as which message you are viewing within a list.\r\n\r\n.homeLink\r\nUsed by the my home (^H) macro.\r\n\r\n.horizontalMenu \r\nThe horizontal menu (if you use a horizontal menu macro).\r\n\r\n.loginBox\r\nThe login box (^L) macro.\r\n\r\n.makePrintableLink\r\nUsed by the make printable (^r) macro.\r\n\r\n.myAccountLink\r\nUsed by the my account (^a) macro.\r\n\r\n.pagination \r\nThe Previous and Next links on pages with pagination.\r\n\r\n.pollAnswer \r\nAn answer on a poll.\r\n\r\n.pollColor \r\nThe color of the percentage bar on a poll.\r\n\r\n.pollQuestion \r\nThe question on a poll.\r\n\r\n.tableData \r\nThe data rows on things like message boards and user contributions.\r\n\r\n.tableHeader \r\nThe headings of columns on things like message boards and user contributions.\r\n\r\n.tableMenu \r\nThe menu on things like message boards and user submissions.\r\n\r\n.verticalMenu \r\nThe vertical menu (if you use a verticall menu macro).\r\n\r\n','0'); -INSERT INTO help VALUES (19,'WebGUI','English','Using','Macros','WebGUI macros are used to create dynamic content within otherwise static content. For instance, you may wish to show which user is logged in on every page, or you may wish to have a dynamically built menu or crumb trail. \r\n\r\nMacros always begin with a carat (^) and follow with one other character. Some macros can be extended/configured by taking the format of ^xconfig text^/x. The following is a description of all the macros in the WebGUI system.\r\n\r\n^a or ^a^/a - My Account Link\r\nA link to your account information. In addition you can change the link text by creating a macro like this ^aAccount Info^/a.\r\n\r\n^C - Crumb Trail\r\nA dynamically generated crumb trail to the current page.\r\n\r\n^c - Company Name\r\nThe name of your company specified in the settings by your Administrator.\r\n\r\n^D or ^D^/D - Date\r\nThe current date and time.\r\n\r\nYou can configure the date by using date formatting symbols. For instance, if you created a macro like this ^D%c %D, %y^/D it would output September 26, 2001. The following are the available date formatting symbols:\r\n\r\n %% = %\r\n %y = 4 digit year\r\n %Y = 2 digit year\r\n %m = 2 digit month\r\n %M = variable digit month\r\n %c = month name\r\n %d = 2 digit day of month\r\n %D = variable digit day of month\r\n %w = day of week name\r\n %h = 2 digit base 12 hour\r\n %H = variable digit base 12 hour\r\n %j = 2 digit base 24 hour\r\n %J = variable digit base 24 hour\r\n %p = lower case am/pm\r\n %P = upper case AM/PM\r\n\r\n^e - Company Email Address\r\nThe email address for your company specified in the settings by your Administrator.\r\n\r\n^H or ^H^/H - Home Link\r\nA link to the home page of this site. In addition you can change the link text by creating a macro like this ^HGo Home^/H.\r\n\r\n^L - Login\r\nA small login form.\r\n\r\n^M or ^M^/M - Current Menu (Vertical)\r\nA vertical menu containing the sub-pages at the current level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^M3^/M. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^m - Current Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the current level.\r\n\r\n^P or ^P^/P - Previous Menu (Vertical)\r\nA vertical menu containing the sub-pages at the previous level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^TP^/P. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^p - Previous Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the previous level.\r\n\r\n^r or ^r^/r - Make Page Printable\r\nCreates a link to remove the style from a page to make it printable. In addition, you can change the link text by creating a macro like this ^rPRINT!^/r.\r\n\r\n^S^/S - Specific SubMenu (Vertical)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^Shome,0^/S. The first value is the urlized title of the page and the second value is the depth you\'d like the menu to go. By default it will show only the first level. To go three levels deep create a macro like this ^Shome,3^/S.\r\n\r\n^s^/s - Specific SubMenu (Horizontal)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^shome^/s. The value is the urlized title of the page.\r\n\r\n^T or ^T^/T - Top Level Menu (Vertical)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page). In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^T3^/T. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^t - Top Level Menu (Horizontal)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page).\r\n\r\n^u - Company URL\r\nThe URL for your company specified in the settings by your Administrator.\r\n\r\n^^ - Carat\r\nSince the carat symbol is used to start all macros, this macro is in place just in case you really wanted to use a carat somewhere.\r\n\r\n^/ - System URL\r\nThe URL to the gateway script (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^\\ - Page URL\r\nThe URL to the current page (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^@ - Username\r\nThe username of the currently logged in user.\r\n\r\n^# - User ID\r\nThe user id of the currently logged in user.\r\n\r\n^* or ^*^/* - Random Number\r\nA randomly generated number. This is often used on images (such as banner ads) that you want to ensure do not cache. In addition, you may configure this macro like this ^*100^/* to create a random number between 0 and 100.\r\n\r\n^0,^1,^2,^3,^4,^5,^6,^7,^8,^9, ^-\r\nThese macros are reserved for widget-specific functions as in the SQL Report widget.\r\n','0'); -INSERT INTO help VALUES (1,'SQLReport','English','Add/Edit','SQL Report','SQL Reports are perhaps the most powerful widget in the WebGUI arsenal. They allow a user to query data from any database that they have access to. This is great for getting sales figures from your Accounting database or even summarizing all the message boards on your web site.\r\n\r\nTitle\r\nThe title of this report.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the content of this report so your users will better understand what the report is all about.\r\n\r\nTemplate\r\nLayout a template of how this report should look. Usually you\'ll use HTML tables to generate a report. An example is included below.\r\n\r\nThere are 11 special macro characters used in generating SQL Reports. They are ^-, ^0, ^1, ^2, ^3, ^4, ^5, ^6, ^7, ^8, and ^9. These macros will be processed regardless of whether you checked the process macros box above. The ^- macro represents split points in the document where the report will begin and end looping. The numeric macros represent the data fields that will be returned from your query. Note that you may only have 10 fields returned per row in your query.\r\n\r\nSample Template:\r\n<table>\r\n<tr><th>Employee Name</th><th>Employee #</th><th>Vacation Days Remaining</th><th>Monthly Salary</th></tr>\r\n^-\r\n<tr><td>^0</td><td>^1</td><td>^2</td><td>^3</td></tr>\r\n^-\r\n</table>\r\n\r\nQuery\r\nThis is a standard SQL query. If you are unfamiliar with SQL, Plain Black Software provides training courses in SQL and database management.\r\n\r\nDSN\r\nData Source Name is the unique identifier that Perl uses to describe the location of your database. It takes the format of DBI:[driver]:[database name]:[host]. \r\n\r\nExample: DBI:mysql:WebGUI:localhost\r\n\r\nDatabase User\r\nThe username you use to connect to the DSN.\r\n\r\nDatabase Password\r\nThe password you use to connect to the DSN.\r\n\r\nConvert carriage returns?\r\nDo you wish to convert the carriage returns in the resultant data to HTML breaks (<br>).\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (18,'WebGUI','English','Using','Style Sheets','Cascading Style Sheets (CSS) are a great way to manage the look and feel of any web site. They are used extensively in WebGUI.\r\n\r\nIf you are unfamiliar with how to use CSS, Plain Black Software provides training classes on XHTML and CSS. Alternatively, Bradsoft makes an excellent CSS editor called Top Style.\r\n\r\nThe following is a list of classes used to control the look of WebGUI:\r\n\r\nA\r\nThe links throughout the style.\r\n\r\nBODY\r\nThe default setup of all pages within a style.\r\n\r\nH1\r\nThe headers on every page.\r\n\r\n.accountOptions\r\nThe links that appear under the login and account update forms.\r\n\r\n.adminBar \r\nThe bar that appears at the top of the page when you\'re in admin mode.\r\n\r\n.content\r\nThe main content area on all pages of the style.\r\n\r\n.crumbTrail \r\nThe crumb trail (if you\'re using that macro).\r\n\r\n.formDescription \r\nThe tags on all forms next to the form elements. \r\n\r\n.formSubtext \r\nThe tags below some form elements.\r\n\r\n.highlight \r\nDenotes a highlighted item, such as which message you are viewing within a list.\r\n\r\n.homeLink\r\nUsed by the my home (^H) macro.\r\n\r\n.horizontalMenu \r\nThe horizontal menu (if you use a horizontal menu macro).\r\n\r\n.loginBox\r\nThe login box (^L) macro.\r\n\r\n.makePrintableLink\r\nUsed by the make printable (^r) macro.\r\n\r\n.myAccountLink\r\nUsed by the my account (^a) macro.\r\n\r\n.pagination \r\nThe Previous and Next links on pages with pagination.\r\n\r\n.tableData \r\nThe data rows on things like message boards and user contributions.\r\n\r\n.tableHeader \r\nThe headings of columns on things like message boards and user contributions.\r\n\r\n.tableMenu \r\nThe menu on things like message boards and user submissions.\r\n\r\n.verticalMenu \r\nThe vertical menu (if you use a verticall menu macro).\r\n\r\nNote: Some widgets have their own unique styles.\r\n\r\n','0'); +INSERT INTO help VALUES (19,'WebGUI','English','Using','Macros','WebGUI macros are used to create dynamic content within otherwise static content. For instance, you may wish to show which user is logged in on every page, or you may wish to have a dynamically built menu or crumb trail. \r\n\r\nMacros always begin with a carat (^) and follow with at least one other character and ended with w semicolon (;). Some macros can be extended/configured by taking the format of ^x(\"config text\");. The following is a description of all the macros in the WebGUI system.\r\n\r\n^a; or ^a(\"new link title\"); - My Account Link\r\nA link to your account information. In addition you can change the link text by creating a macro like this ^a(\"Account Info\");.\r\n\r\n^C; - Crumb Trail\r\nA dynamically generated crumb trail to the current page.\r\n\r\n^c; - Company Name\r\nThe name of your company specified in the settings by your Administrator.\r\n\r\n^D; or ^D(\"%c %D, %y\"); - Date\r\nThe current date and time.\r\n\r\nYou can configure the date by using date formatting symbols. For instance, if you created a macro like this ^D(\"%c %D, %y\"); it would output September 26, 2001. The following are the available date formatting symbols:\r\n\r\n %% = %\r\n %y = 4 digit year\r\n %Y = 2 digit year\r\n %m = 2 digit month\r\n %M = variable digit month\r\n %c = month name\r\n %d = 2 digit day of month\r\n %D = variable digit day of month\r\n %w = day of week name\r\n %h = 2 digit base 12 hour\r\n %H = variable digit base 12 hour\r\n %j = 2 digit base 24 hour\r\n %J = variable digit base 24 hour\r\n %p = lower case am/pm\r\n %P = upper case AM/PM\r\n\r\n^e; - Company Email Address\r\nThe email address for your company specified in the settings by your Administrator.\r\n\r\n^H; or ^H(\"Go Home\"); - Home Link\r\nA link to the home page of this site. In addition you can change the link text by creating a macro like this ^H(\"Go Home\");.\r\n\r\n^L; - Login\r\nA small login form.\r\n\r\n^M; or ^M(3); - Current Menu (Vertical)\r\nA vertical menu containing the sub-pages at the current level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^M(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^m; - Current Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the current level.\r\n\r\n^P; or ^P(3); - Previous Menu (Vertical)\r\nA vertical menu containing the sub-pages at the previous level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^P(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^p; - Previous Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the previous level.\r\n\r\n^r; or ^r(\"Print Me!\"); - Make Page Printable\r\nCreates a link to remove the style from a page to make it printable. In addition, you can change the link text by creating a macro like this ^r(\"Print Me!\");.\r\n\r\n^S(\"home\",0); - Specific SubMenu (Vertical)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^S(\"home\",0);. The first value is the urlized title of the page and the second value is the depth you\'d like the menu to go. By default it will show only the first level. To go three levels deep create a macro like this ^S(\"home\",3);.\r\n\r\n^s(\"home\"); - Specific SubMenu (Horizontal)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^s(\"home\");. The value is the urlized title of the page.\r\n\r\n^T; or ^T(3); - Top Level Menu (Vertical)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page). In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^T(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^t; - Top Level Menu (Horizontal)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page).\r\n\r\n^u; - Company URL\r\nThe URL for your company specified in the settings by your Administrator.\r\n\r\n^/; - System URL\r\nThe URL to the gateway script (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^\\; - Page URL\r\nThe URL to the current page (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^@; - Username\r\nThe username of the currently logged in user.\r\n\r\n^#; - User ID\r\nThe user id of the currently logged in user.\r\n\r\n^*; or ^*(100); - Random Number\r\nA randomly generated number. This is often used on images (such as banner ads) that you want to ensure do not cache. In addition, you may configure this macro like this ^*(100); to create a random number between 0 and 100.\r\n\r\n^0;,^1;,^2;,^3;,^4;,^5;,^6;,^7;,^8;,^9;, ^-;\r\nThese macros are reserved for widget-specific functions as in the SQL Report widget.\r\n','0'); +INSERT INTO help VALUES (1,'SQLReport','English','Add/Edit','SQL Report','SQL Reports are perhaps the most powerful widget in the WebGUI arsenal. They allow a user to query data from any database that they have access to. This is great for getting sales figures from your Accounting database or even summarizing all the message boards on your web site.\r\n\r\nTitle\r\nThe title of this report.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the content of this report so your users will better understand what the report is all about.\r\n\r\nTemplate\r\nLayout a template of how this report should look. Usually you\'ll use HTML tables to generate a report. An example is included below.\r\n\r\nThere are 11 special macro characters used in generating SQL Reports. They are ^-;, ^0;, ^1;, ^2;, ^3;, ^4;, ^5;, ^6;, ^7;, ^8;, and ^9;. These macros will be processed regardless of whether you checked the process macros box above. The ^- macro represents split points in the document where the report will begin and end looping. The numeric macros represent the data fields that will be returned from your query. Note that you may only have 10 fields returned per row in your query.\r\n\r\nSample Template:\r\n<table>\r\n<tr><th>Employee Name</th><th>Employee #</th><th>Vacation Days Remaining</th><th>Monthly Salary</th></tr>\r\n^-;\r\n<tr><td>^0;</td><td>^1;</td><td>^2;</td><td>^3;</td></tr>\r\n^-;\r\n</table>\r\n\r\nQuery\r\nThis is a standard SQL query. If you are unfamiliar with SQL, Plain Black Software provides training courses in SQL and database management.\r\n\r\nDSN\r\nData Source Name is the unique identifier that Perl uses to describe the location of your database. It takes the format of DBI:[driver]:[database name]:[host]. \r\n\r\nExample: DBI:mysql:WebGUI:localhost\r\n\r\nDatabase User\r\nThe username you use to connect to the DSN.\r\n\r\nDatabase Password\r\nThe password you use to connect to the DSN.\r\n\r\nConvert carriage returns?\r\nDo you wish to convert the carriage returns in the resultant data to HTML breaks (<br>).\r\n','1,2,3,4,5'); INSERT INTO help VALUES (21,'WebGUI','English','Using','Widget','Widgets are the true power of WebGUI. Widgets are tiny pluggable applications built to run under WebGUI. Message boards and polls are examples of widgets.\r\n\r\nTo add a widget to a page, first go to that page, then select Add Content... from the upper left corner of your screen. Each widget has it\'s own help so be sure to read the help if you\'re not sure how to use a widget.\r\n','0'); INSERT INTO help VALUES (1,'Article','English','Add/Edit','Article','Articles are the Swiss Army knife of WebGUI. Most pieces of static content can be added via the Article widget.\r\n\r\nTitle\r\nWhat\'s the title for this content? Even if you don\'t wish the title to appear, it\'s a good idea to title your content so that if it is ever copied to the clipboard it will have a name.\r\n\r\nDisplay the title?\r\nDo you wish to display the title listed above?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros on this article? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nStart Date\r\nWhat date do you want this article to appear on the site? Dates are in the format of MM/DD/YYYY. You can use the JavaScript wizard to choose your date from a calendar by clicking on the set date button. By default the date is set to 01/01/2000.\r\n\r\nEnd Date\r\nWhat date do you want this article to be removed from the site? By default the date is set to 100 years in the future, 01/01/2100.\r\n\r\nBody\r\nThe body of the article is where all the content goes. You may feel free to add HTML tags as necessary to format your content. Be sure to put a <p> between paragraphs to add white space to your content.\r\n\r\nImage\r\nChoose an image (.jpg, .gif, .png) file from your hard drive. This file will be uploaded to the server and displayed in the upper-right corner of your article.\r\n\r\nLink Title\r\nIf you wish to add a link to your article, enter the title of the link in this field. \r\n\r\nExample: Google\r\n\r\nLink URL\r\nIf you added a link title, now add the URL (uniform resource locator) here. \r\n\r\nExample: http://www.google.com\r\n\r\nAttachment\r\nIf you wish to attach a word processor file, a zip file, or any other file for download by your users, then choose it from your hard drive.\r\n\r\nConvert carriage returns?\r\nIf you\'re publishin HTML there\'s generally no need to check this option, but if you aren\'t using HTML and you want a carriage return every place you hit your \"Enter\" key, then check this option.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (1,'ExtraColumn','English','Add/Edit','Extra Column','Extra columns allow you to change the layout of your page for one page only. If you wish to have multiple columns on all your pages. Perhaps you should consider altering the style applied to your pages. \r\n\r\nColumns are always added from left to right. Therefore any existing content will be on the left of the new column.\r\n\r\nSpacer\r\nSpacer is the amount of space between your existing content and your new column. It is measured in pixels.\r\n\r\nWidth\r\nWidth is the actual width of the new column to be added. Width is measured in pixels.\r\n\r\nStyleSheet Class\r\nBy default the content style (which is the style the body of your site should be using) that is applied to all columns. However, if you\'ve created a style specifically for columns, then feel free to modify this class.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (27,'WebGUI','English','Add/Edit','Widget','You can add widgets by selecting from the Add Content pulldown menu. You can edit them by clicking on the \"Edit\" button that appears directly above an instance of a particular widget.','0'); -INSERT INTO help VALUES (1,'Poll','English','Add/Edit','Poll','Polls can be used to get the impressions of your users on various topics.\r\n\r\nTitle\r\nThe title of the poll. Even if you don\'t wish to display the title you should fill out this field so this poll will have a name if it is ever placed in the clipboard.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nYou may provide a description for this poll, or give the user some background information.\r\n\r\nActive\r\nIf this box is checked, then users will be able to vote. Otherwise they\'ll only be able to see the results of the poll.\r\n\r\nWho can vote?\r\nChoose a group that can vote on this poll.\r\n\r\nGraph Width\r\nThe width of the poll results graph. The width is measured in pixels.\r\n\r\nQuestion\r\nWhat is the question you\'d like to ask your users?\r\n\r\nAnswers\r\nEnter the possible answers to your question. Enter only one answer per line. Polls are only capable of 20 possible answers.\r\n\r\nReset votes.\r\nReset the votes on this poll.','1,2,3,4,5'); +INSERT INTO help VALUES (1,'Poll','English','Add/Edit','Poll','Polls can be used to get the impressions of your users on various topics.\r\n\r\nTitle\r\nThe title of the poll. Even if you don\'t wish to display the title you should fill out this field so this poll will have a name if it is ever placed in the clipboard.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nYou may provide a description for this poll, or give the user some background information.\r\n\r\nActive\r\nIf this box is checked, then users will be able to vote. Otherwise they\'ll only be able to see the results of the poll.\r\n\r\nWho can vote?\r\nChoose a group that can vote on this poll.\r\n\r\nGraph Width\r\nThe width of the poll results graph. The width is measured in pixels.\r\n\r\nQuestion\r\nWhat is the question you\'d like to ask your users?\r\n\r\nAnswers\r\nEnter the possible answers to your question. Enter only one answer per line. Polls are only capable of 20 possible answers.\r\n\r\nReset votes.\r\nReset the votes on this poll.\r\n\r\n
\r\nNote: The following style sheet entries are custom to the Poll widget:\r\n\r\n.pollAnswer \r\nAn answer on a poll.\r\n\r\n.pollColor \r\nThe color of the percentage bar on a poll.\r\n\r\n.pollQuestion \r\nThe question on a poll.\r\n\r\n','1,2,3,4,5'); INSERT INTO help VALUES (1,'SiteMap','English','Add/Edit','Site Map','Site maps are used to provide additional navigation in WebGUI. You could set up a traditional site map that would display a hierarchical view of all the pages in the site. On the other hand, you could use site maps to provide extra navigation at certain levels in your site.\r\n\r\nTitle\r\nWhat title would you give to this site map? You should fill this field out even if you don\'t wish it to be displayed.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nEnter a description as to why this site map is here and what purpose it serves.\r\n\r\nStarting from this level?\r\nIf the site map should display the page tree starting from this level, then check this box. If you wish the site map to start from the home page then uncheck it.\r\n\r\nShow only one level?\r\nShould the site map display only the current level of pages or all pages from this point forward? \r\n','1,2,3,4,5'); INSERT INTO help VALUES (1,'MessageBoard','English','Add/Edit','Message Board','Message boards, also called Forums and/or Discussions, are a great way to add community to any site or intranets. Many companies use message boards internally to collaborate on projects.\r\n\r\nTitle\r\nThe name of this board.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what should be displayed on this message board.\r\n\r\nWho can post?\r\nWhat group can post to this message board?\r\n\r\nMessages Per Page\r\nWhen a visitor first comes to a message board s/he will be presented with a listing of all the topics (aka threads) of the message board. If a board is popular, it will quickly have many topics. The messages per page attribute allows you to specify how many topics should be shown on one page.\r\n\r\nEdit Timeout\r\nHow long after a user has posted to the board will their message be available for them to edit. This timeout is measured in hours.\r\n\r\nNote: Don\'t set this limit too high. One of the great things about message boards is that they are an accurate record of a discussion. If you allow editing for a long time, then a user has a chance to go back and change his/her mind a long time after the original statement was made.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (1,'LinkList','English','Add/Edit','Link List','Link lists are just what they sound like, a list of links. Many sites have a links section, and this just automates the process.\r\n\r\nTitle\r\nWhat is the title of this link list?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the purpose of the links in this list.\r\n\r\nProceed to add link?\r\nLeave this checked if you want to add links to the link list directly after creating it.\r\n\r\nAdding / Editing Links\r\nYou\'ll notice at the bottom of the Edit screen that there are some options to add, edit, delete and reorder the links in your link lists. This process works exactly as the process for doing the same with widgets and pages. The three properties of links are name, url, and description.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (13,'WebGUI','English','Edit','Mail Settings','Recover Password Message\r\nThe message that gets sent to a user when they use the \"recover password\" function.\r\n\r\nSMTP Server\r\nThis is the address of your local mail server. It is needed for all features that use the Internet email system (such as password recovery).\r\n\r\n','6'); INSERT INTO help VALUES (1,'SyndicatedContent','English','Add/Edit','Syndicated Content','Syndicated content is content that is pulled from another site using the RDF/RSS specification. This technology is often used to pull headlines from various news sites like CNN and Slashdot. It can, of course, be used for other things like sports scores, stock market info, etc.\r\n\r\nYou can find a list of syndicated content at http://my.userland.com. You will need to register with an account to browse their listing of content. Also, the list contained there is by no means a complete list of all the syndicated content on the internet.\r\n\r\nTitle\r\nWhat is the title for this content? This is often the title of the site that the content comes from.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe the content being pulled so that your users will know what they are seeing.\r\n\r\nURL to RSS file\r\nProvide the exact URL (starting with http://) to the syndicated content\'s RDF or RSS file. The syndicated content will be downloaded from this URL hourly.','1,2,3,4,5'); -INSERT INTO help VALUES (1,'EventsCalendar','English','Add/Edit','Events Calendar','Events calendars are used on many intranets to keep track of internal dates that affect a whole organization. Also events calendars on consumer sites are a great way to let your customers know what events you\'ll be attending and what promotions you\'ll be having.\r\n\r\nTitle\r\nWhat is the title of this events calendar?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this events calendar details.\r\n\r\nProceed to add event?\r\nLeave this checked if you want to add events to the events calendar directly after creating it.\r\n\r\nAdd / Edit Events\r\nOn the edit screen you\'ll notice that there are options to add, edit, and delete the events in your events calendar. The properties for events are name, description, start date, and end date.\r\n\r\nNote: Events that have already happened will not be displayed on the events calendar.','1,2,3,4,5'); -INSERT INTO help VALUES (1,'FAQ','English','Add/Edit','F.A.Q.','It seems that almost every web site, intranet, and extranet in the world has a frequently asked questions area. This widget helps you build one too.\r\n\r\nTitle\r\nWhat is the title for this FAQ section?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this FAQ covers.\r\n\r\nProceed to add question?\r\nLeave this checked if you want to add questions to the FAQ directly after creating it.\r\n\r\nAdd / Edit Questions\r\nOn the edit screen you\'ll notice options for adding, editing, deleting, and reordering the questions in your FAQ. The two properties of FAQ questions are question and answer.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'EventsCalendar','English','Add/Edit','Events Calendar','Events calendars are used on many intranets to keep track of internal dates that affect a whole organization. Also events calendars on consumer sites are a great way to let your customers know what events you\'ll be attending and what promotions you\'ll be having.\r\n\r\nTitle\r\nWhat is the title of this events calendar?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this events calendar details.\r\n\r\nProceed to add event?\r\nLeave this checked if you want to add events to the events calendar directly after creating it.\r\n\r\nAdd / Edit Events\r\nOn the edit screen you\'ll notice that there are options to add, edit, and delete the events in your events calendar. The properties for events are name, description, start date, and end date.\r\n\r\nNote: Events that have already happened will not be displayed on the events calendar.\r\n\r\n
\r\nNote: The following style is specific to the Events Calendar.\r\n\r\n.eventTitle \r\nThe title of an individual event.\r\n\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'FAQ','English','Add/Edit','F.A.Q.','It seems that almost every web site, intranet, and extranet in the world has a frequently asked questions area. This widget helps you build one too.\r\n\r\nTitle\r\nWhat is the title for this FAQ section?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this FAQ covers.\r\n\r\nProceed to add question?\r\nLeave this checked if you want to add questions to the FAQ directly after creating it.\r\n\r\nAdd / Edit Questions\r\nOn the edit screen you\'ll notice options for adding, editing, deleting, and reordering the questions in your FAQ. The two properties of FAQ questions are question and answer.\r\n\r\n
\r\nNote: The following style is specific to the FAQ widget.\r\n\r\n.faqQuestion\r\nAn F.A.Q. question. To distinguish it from an answer.\r\n\r\n','1,2,3,4,5'); INSERT INTO help VALUES (11,'WebGUI','English','Edit','File Settings','Path to WebGUI Extras\r\nThe web-path to the directory containing WebGUI images and javascript files.\r\n\r\nMaximum Attachment Size\r\nThe maximum size of files allowed to be uploaded to this site. This applies to all widgets that allow uploaded files and images (like Article and User Contributions). This size is measured in kilobytes.\r\n\r\nWeb Attachment Path\r\nThe web-path of the directory where attachments are to be stored.\r\n\r\nServer Attachment Path\r\nThe local path of the directory where attachments are to be stored. (Perhaps /var/www/public/uploads) Be sure that the web server has the rights to write to that directory.\r\n','6'); INSERT INTO help VALUES (2,'WebGUI','English','Edit','Authentication Settings','Anonymous Registration\r\nDo you wish visitors to your site to be able to register themselves?\r\n\r\nAuthentication Method (default)\r\nWhat should the default authentication method be for new accounts that are created? The two available options are WebGUI and LDAP. WebGUI authentication means that the users will authenticate against the username and password stored in the WebGUI database. LDAP authentication means that users will authenticate against an external LDAP server.\r\n\r\nNote: Authentication settings can be customized on a per user basis.\r\n\r\nUsername Binding\r\nBind the WebGUI username to the LDAP Identity. This requires the user to have the same username in WebGUI as they specified during the Anonymous Registration process. It also means that they won\'t be able to change their username later. This only in effect if the user is authenticating against LDAP.\r\n\r\nLDAP URL (default)\r\nThe default url to your LDAP server. The LDAP URL takes the form of ldap://[server]:[port]/[base DN]. Example: ldap://ldap.mycompany.com:389/o=MyCompany.\r\n\r\nLDAP Identity\r\nThe LDAP Identity is the unique identifier in the LDAP server that the user will be identified against. Often this field is shortname, which takes the form of first initial + last name. Example: jdoe. Therefore if you specify the LDAP identity to be shortname then Jon Doe would enter jdoe during the registration process.\r\n\r\nLDAP Identity Name\r\nThe label used to describe the LDAP Identity to the user. For instance, some companies use an LDAP server for their proxy server users to authenticate against. In the documentation or training already provided to their users, the LDAP identity is known as their Web Username. So you could enter that label here for consitency.\r\n\r\nLDAP Password Name\r\nJust as the LDAP Identity Name is a label, so is the LDAP Password Name. Use this label as you would LDAP Identity Name.\r\n\r\n','6'); -INSERT INTO help VALUES (1,'UserSubmission','English','Add/Edit','User Submission System','User submission systems are a great way to add a sense of community to any site as well as get free content from your users.\r\n\r\nTitle\r\nWhat is the title for this user submission system?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe why this user submission system is here and what should be submitted to it.\r\n\r\nWho can contribute?\r\nWhat group is allowed to contribute content?\r\n\r\nSubmissions Per Page\r\nHow many submissions should be listed per page in the submissions index?\r\n\r\nDefault Status\r\nShould submissions be set to approved, pending, or denied by default?\r\n\r\nNote: If you set the default status to pending, then be prepared to monitor the pending queue under the Admin menu.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'UserSubmission','English','Add/Edit','User Submission System','User submission systems are a great way to add a sense of community to any site as well as get free content from your users.\r\n\r\nTitle\r\nWhat is the title for this user submission system?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe why this user submission system is here and what should be submitted to it.\r\n\r\nWho can approve?\r\nWhat group is allowed to approve and deny content?\r\n\r\nWho can contribute?\r\nWhat group is allowed to contribute content?\r\n\r\nSubmissions Per Page\r\nHow many submissions should be listed per page in the submissions index?\r\n\r\nDefault Status\r\nShould submissions be set to approved, pending, or denied by default?\r\n\r\nNote: If you set the default status to pending, then be prepared to monitor the pending queue under the Admin menu.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (6,'WebGUI','English','Edit','Company Information','Company Name\r\nThe name of your company. It will appear on all emails and anywhere you use the Company Name macro.\r\n\r\nCompany Email Address\r\nA general email address at your company. This is the address that all automated messages will come from. It can also be used via the WebGUI macro system.\r\n\r\nCompany URL\r\nThe primary URL of your company. This will appear on all automated emails sent from the WebGUI system. It is also available via the WebGUI macro system.\r\n','6'); INSERT INTO help VALUES (46,'WebGUI','English','Empty','Trash','If you choose to empty your trash, any items contained in it will be lost forever. If you\'re unsure about a few items, it might be best to cut them to your clipboard before you empty the trash.','0'); INSERT INTO help VALUES (22,'WebGUI','English','Edit','Profile Settings','Profiles are used to extend the information of a particular user. In some cases profiles are important to a site, in others they are not. Use the following switches to turn the various profile sections on and off.\r\n\r\nAllow real name?\r\nDo you want users to enter and display their real names?\r\n\r\nAllow extra contact information?\r\nDo you want users to enter and display their extra contact information such as Instant Messenger IDs, cell phone numbers, and pager numbers?\r\n\r\nAllow home information?\r\nDo you want users to enter and display their home address and phone number?\r\n\r\nAllow business information?\r\nDo you want users to enter and display their work address and phone number?\r\n\r\nAllow miscellaneous information?\r\nDo you want users to enter and display any extra info such as gender, birthdate and home page?','6'); @@ -469,7 +496,7 @@ CREATE TABLE incrementer ( # INSERT INTO incrementer VALUES ('groupId',26); -INSERT INTO incrementer VALUES ('messageId',1); +INSERT INTO incrementer VALUES ('messageId',7); INSERT INTO incrementer VALUES ('pageId',26); INSERT INTO incrementer VALUES ('styleId',26); INSERT INTO incrementer VALUES ('userId',26); @@ -479,6 +506,7 @@ INSERT INTO incrementer VALUES ('linkId',1); INSERT INTO incrementer VALUES ('questionId',1); INSERT INTO incrementer VALUES ('submissionId',1); INSERT INTO incrementer VALUES ('recurringEventId',1); +INSERT INTO incrementer VALUES ('messageLogId',1); # # Table structure for table 'international' @@ -654,7 +682,7 @@ INSERT INTO international VALUES (155,'WebGUI','English','Are you certain you wi INSERT INTO international VALUES (156,'WebGUI','English','Edit Style'); INSERT INTO international VALUES (157,'WebGUI','English','Styles'); INSERT INTO international VALUES (158,'WebGUI','English','Add a new style.'); -INSERT INTO international VALUES (159,'WebGUI','English','Pending Submissions'); +INSERT INTO international VALUES (159,'WebGUI','English','Message Log'); INSERT INTO international VALUES (160,'WebGUI','English','Date Submitted'); INSERT INTO international VALUES (161,'WebGUI','English','Submitted By'); INSERT INTO international VALUES (162,'WebGUI','English','Are you certain that you wish to purge all the pages and widgets in the trash?'); @@ -774,7 +802,7 @@ INSERT INTO international VALUES (275,'WebGUI','English','Last Fetched'); INSERT INTO international VALUES (276,'WebGUI','English','Current Content'); INSERT INTO international VALUES (277,'WebGUI','English','User Submission System'); INSERT INTO international VALUES (278,'WebGUI','English','Add User Submission System'); -INSERT INTO international VALUES (279,'WebGUI','English','Who can contribute?'); +INSERT INTO international VALUES (2,'UserSubmission','English','Who can contribute?'); INSERT INTO international VALUES (280,'WebGUI','English','Submissions Per Page'); INSERT INTO international VALUES (281,'WebGUI','English','Approved'); INSERT INTO international VALUES (282,'WebGUI','English','Denied'); @@ -806,7 +834,7 @@ INSERT INTO international VALUES (283,'WebGUI','Deutsch','Ausstehend'); INSERT INTO international VALUES (282,'WebGUI','Deutsch','Verboten'); INSERT INTO international VALUES (281,'WebGUI','Deutsch','Erlaubt'); INSERT INTO international VALUES (280,'WebGUI','Deutsch','Beiträge pro Seite'); -INSERT INTO international VALUES (279,'WebGUI','Deutsch','Wer kann Beiträge schreiben?'); +INSERT INTO international VALUES (2,'UserSubmission','Deutsch','Wer kann Beiträge schreiben?'); INSERT INTO international VALUES (277,'WebGUI','Deutsch','Benutzer Beitragssystem'); INSERT INTO international VALUES (278,'WebGUI','Deutsch','Benutzer Beitragssystem hinzufügen'); INSERT INTO international VALUES (276,'WebGUI','Deutsch','Aktueller Inhalt'); @@ -1470,7 +1498,7 @@ INSERT INTO international VALUES (269,'WebGUI','Espa INSERT INTO international VALUES (270,'WebGUI','Español','Error: No se puede conectar a la base de datos.'); INSERT INTO international VALUES (277,'WebGUI','Español','Sistema de Contribución de Usuarios'); INSERT INTO international VALUES (278,'WebGUI','Español','Agregar Sistema de Contribución de Usuarios'); -INSERT INTO international VALUES (279,'WebGUI','Español','Quiénes pueden contribuir?'); +INSERT INTO international VALUES (2,'UserSubmission','Español','Quiénes pueden contribuir?'); INSERT INTO international VALUES (280,'WebGUI','Español','Contribuciones por página'); INSERT INTO international VALUES (281,'WebGUI','Español','Aprobado'); INSERT INTO international VALUES (282,'WebGUI','Español','Denegado'); @@ -1499,26 +1527,39 @@ INSERT INTO international VALUES (304,'WebGUI','Espa INSERT INTO international VALUES (1,'FAQ','English','Proceed to add question?'); INSERT INTO international VALUES (5,'LinkList','English','Proceed to add link?'); INSERT INTO international VALUES (1,'EventsCalendar','English','Proceed to add event?'); +INSERT INTO international VALUES (1,'UserSubmission','English','Who can approve?'); +INSERT INTO international VALUES (3,'UserSubmission','English','You have a new user submission to approve.'); +INSERT INTO international VALUES (350,'WebGUI','English','Completed'); +INSERT INTO international VALUES (4,'UserSubmission','English','Your submission has been approved.'); +INSERT INTO international VALUES (5,'UserSubmission','English','Your submission has been denied.'); +INSERT INTO international VALUES (351,'WebGUI','English','Message Log Entry'); +INSERT INTO international VALUES (352,'WebGUI','English','Date Of Entry'); +INSERT INTO international VALUES (353,'WebGUI','English','You have no message log entries at this time.'); +INSERT INTO international VALUES (354,'WebGUI','English','View message log.'); +INSERT INTO international VALUES (1,'SiteMap','English','Add Site Map'); +INSERT INTO international VALUES (2,'SiteMap','English','Site Map'); +INSERT INTO international VALUES (3,'SiteMap','English','Starting from this level?'); +INSERT INTO international VALUES (4,'SiteMap','English','Depth To Traverse'); +INSERT INTO international VALUES (5,'SiteMap','English','Edit Site Map'); +INSERT INTO international VALUES (6,'SiteMap','English','Indent'); +INSERT INTO international VALUES (7,'SiteMap','English','Bullet'); +INSERT INTO international VALUES (8,'SiteMap','English','Line Spacing'); # -# Table structure for table 'message' +# Table structure for table 'messageLog' # -CREATE TABLE message ( - messageId int(11) NOT NULL default '0', - rid int(11) default NULL, - widgetId int(11) default NULL, - pid int(11) default NULL, - userId int(11) default NULL, - username varchar(30) default NULL, - subject varchar(255) default NULL, +CREATE TABLE messageLog ( + messageLogId int(11) NOT NULL default '0', + userId int(11) NOT NULL default '0', message text, - dateOfPost int(11) default NULL, - PRIMARY KEY (messageId) + url text, + dateOfEntry int(11) default NULL, + PRIMARY KEY (messageLogId,userId) ) TYPE=MyISAM; # -# Dumping data for table 'message' +# Dumping data for table 'messageLog' # @@ -1612,7 +1653,7 @@ INSERT INTO settings VALUES ('attachmentDirectoryWeb','/uploads'); INSERT INTO settings VALUES ('maxAttachmentSize','300'); INSERT INTO settings VALUES ('lib','/extras'); INSERT INTO settings VALUES ('sessionTimeout','28000'); -INSERT INTO settings VALUES ('attachmentDirectoryLocal','/data/WebGUI/uploads'); +INSERT INTO settings VALUES ('attachmentDirectoryLocal','/data/WebGUI/www/uploads'); INSERT INTO settings VALUES ('smtpServer','localhost'); INSERT INTO settings VALUES ('companyEmail','info@mycompany.com'); INSERT INTO settings VALUES ('ldapURL','ldap://ldap.mycompany.com:389/o=MyCompany'); @@ -1631,7 +1672,7 @@ INSERT INTO settings VALUES ('profileExtraContact','1'); INSERT INTO settings VALUES ('profileMisc','1'); INSERT INTO settings VALUES ('profileHome','0'); INSERT INTO settings VALUES ('profileWork','0'); -INSERT INTO settings VALUES ('VERSION','2.3.4'); +INSERT INTO settings VALUES ('VERSION','2.4.0'); # # Table structure for table 'style' @@ -1651,9 +1692,9 @@ CREATE TABLE style ( # INSERT INTO style VALUES (1,'Reserved','\r\n
^C^D
\r\n
\r\nhorizontal top level menu: ^t\r\n
\r\nhorizontal current level menu: ^m\r\n
\r\n
\r\nvertical top level menu: ^T
\r\n
\r\nvertical current level menu: ^M
\r\n\r\n\r\n
\r\n\r\n','\r\n^@
\r\n^#
\r\n^*
\r\n^?
\r\n
\r\n\r\n\r\n',''); -INSERT INTO style VALUES (2,'Fail Safe','\r\n^H / ^t / ^m / ^a\r\n
','
\r\n^H / ^t / ^m / ^a\r\n',''); -INSERT INTO style VALUES (3,'Plain Black Software','\r\n\r\n
^C^D
\r\n
\r\nuser: ^@\r\n
\r\n^T\r\n
\r\n^m\r\n','

\r\n\r\n^H / ^a\r\n',''); -INSERT INTO style VALUES (4,'Trash / Clipboard','\r\n
PAGES
^M0^/M
CONTENT
','
\r\n
\r\n^H / ^a\r\n',''); +INSERT INTO style VALUES (2,'Fail Safe','\r\n^H; / ^t; / ^m; / ^a;\r\n
','
\r\n^H; / ^t; / ^m; / ^a;\r\n',''); +INSERT INTO style VALUES (3,'Plain Black Software','\r\n\r\n
^C;^D;
\r\n
\r\nuser: ^@;\r\n
\r\n^T;\r\n
\r\n^m;\r\n','

\r\n\r\n^H; / ^a;\r\n',''); +INSERT INTO style VALUES (4,'Trash / Clipboard','\r\n
PAGES
^M(0);
CONTENT
','
\r\n
\r\n^H; / ^a;\r\n',''); INSERT INTO style VALUES (5,'Reserved','','',NULL); INSERT INTO style VALUES (6,'Reserved','','',NULL); INSERT INTO style VALUES (7,'Reserved','','',NULL); diff --git a/docs/credits.txt b/docs/credits.txt index 8f29a54ad..0606798d2 100644 --- a/docs/credits.txt +++ b/docs/credits.txt @@ -1,9 +1,13 @@ +#################################################################### +# WebGUI Credits # +#################################################################### + The following people/companies are responsible for WebGUI: -WebGUI Core...........................JT Smith / Plain Black Software -German Translation....................Mattias Kunkel / WERU AG -Perl..................................Larry Wall / O'Reilly -Data::Config..........................Sébastien Aperghis-Tramoni -IE Rich Edit..........................Brattli -Spanish Translation...................Ricardo Markiewicz +WebGUI Core..........................JT Smith / Plain Black Software +German Translation...................Mattias Kunkel / WERU AG +Perl.................................Larry Wall / O'Reilly +Data::Config.........................Sébastien Aperghis-Tramoni +IE Rich Edit.........................Brattli +Spanish Translation..................Ricardo Markiewicz diff --git a/docs/gotcha.txt b/docs/gotcha.txt new file mode 100644 index 000000000..a110ff73c --- /dev/null +++ b/docs/gotcha.txt @@ -0,0 +1,33 @@ +#################################################################### +# WebGUI Upgrade Gotchas # +#################################################################### + +This file contains a list of any changes you should be aware of when +upgrading from one version to the next, or even between multiple +versions. Be sure to heed the warnings contained herein as they will +save you many hours of grief. + + +2.4.0 +-------------------------------------------------------------------- + * You must convert your old macros to the new format by version + 3.0.0 or they will become unusable. + * The "extras" and "uploads" directories have been moved into the + "www" directory so that aliases do not need to be created + in your web server. + +2.3.2 +-------------------------------------------------------------------- + * Upgrade scripts are no longer available from the Plain Black + web site. They are now included in every distribution under + "docs/upgrades". + +2.1.0 +-------------------------------------------------------------------- + * The Widget and Macro architecture will be changing severely + between now and 3.0.0. If you're using or creating any + third-party widgets they will cease to function over the + course of this development. Before upgrading, be certain + that the Macro or Widget complies with all new + specifications. + diff --git a/docs/install.txt b/docs/install.txt index 4b96b6a30..25cba2e09 100644 --- a/docs/install.txt +++ b/docs/install.txt @@ -1,4 +1,3 @@ - ################################################################## # Quick And Dirty Install Instructions # ################################################################## @@ -28,11 +27,9 @@ QnD INSTALL INSTRUCTIONS: 4. Install MySQL. -5. Install MnoGO Search (http://www.mnogosearch.org). +5. Extract WebGUI into your webroot. -6. Extract WebGUI into your webroot. - -7. Run the following Database commands. (You should modify the +6. Run the following Database commands. (You should modify the commands to match your database, username, and password.) mysql -e "create database WebGUI" @@ -40,9 +37,9 @@ QnD INSTALL INSTRUCTIONS: mysql -e "flush privileges" mysql -uwebgui -ppassword WebGUI < docs/create.sql -8. Edit "etc/WebGUI.conf" to patch your DB settings and log directory. +7. Edit "etc/WebGUI.conf" to patch your DB settings and log directory. -9. Run the following command from your WebGUI directory to determine +8. Run the following command from your WebGUI directory to determine whether you've configured your system correctly. perl testEnvironment.pl diff --git a/docs/legal.txt b/docs/legal.txt index 9f2fcbcb9..d0acc4654 100644 --- a/docs/legal.txt +++ b/docs/legal.txt @@ -1,11 +1,15 @@ +#################################################################### +# WebGUI Legal Information # +#################################################################### + WebGUI is Copyright 2001 Plain Black Software. All rights reserved. WebGUI is a trademark of Plain Black Software. WebGUI is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2 of the License, or (at your -option) any later version. +under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. WebGUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,21 +19,21 @@ purchased from Plain Black Software at http://www.plainblack.com/index.pl/support_programs You should have received a copy of the GNU General Public License -along with this program in a file called "license.txt". If not you can -download it at http://www.opensource.org/licenses/gpl-license.html or -write to: +along with this program in a file called "license.txt". If not you +can download it at +http://www.opensource.org/licenses/gpl-license.html or write to: Free Software Foundation, Inc. 59 Temple Place, Suite 330 Boston, MA 02111-1307 USA -For more information about Plain Black Software or WebGUI, please visit -http://www.plainblack.com or email info@plainblack.com. +For more information about Plain Black Software or WebGUI, please +visit http://www.plainblack.com or email info@plainblack.com. -It is illegal to remove or tamper with the notices at the top of each -file, or this file, or the license file. The notice at the top of each -file looks like the following: +It is illegal to remove or tamper with the notices at the top of +each file, or this file, or the license file. The notice at the top +of each file looks like the following: #------------------------------------------------------------------- # WebGUI is Copyright 2001 Plain Black Software. diff --git a/docs/license.txt b/docs/license.txt index 0d172a20d..1e4f837e4 100644 --- a/docs/license.txt +++ b/docs/license.txt @@ -1,3 +1,7 @@ +#################################################################### +# WebGUI License # +#################################################################### + The General Public License (GPL) Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. diff --git a/docs/previousVersion.sql b/docs/previousVersion.sql index 536b5dbab..7b39edfaa 100644 --- a/docs/previousVersion.sql +++ b/docs/previousVersion.sql @@ -414,11 +414,11 @@ INSERT INTO help VALUES (27,'WebGUI','English','Add/Edit','Widget','You can add INSERT INTO help VALUES (1,'Poll','English','Add/Edit','Poll','Polls can be used to get the impressions of your users on various topics.\r\n\r\nTitle\r\nThe title of the poll. Even if you don\'t wish to display the title you should fill out this field so this poll will have a name if it is ever placed in the clipboard.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nYou may provide a description for this poll, or give the user some background information.\r\n\r\nActive\r\nIf this box is checked, then users will be able to vote. Otherwise they\'ll only be able to see the results of the poll.\r\n\r\nWho can vote?\r\nChoose a group that can vote on this poll.\r\n\r\nGraph Width\r\nThe width of the poll results graph. The width is measured in pixels.\r\n\r\nQuestion\r\nWhat is the question you\'d like to ask your users?\r\n\r\nAnswers\r\nEnter the possible answers to your question. Enter only one answer per line. Polls are only capable of 20 possible answers.\r\n\r\nReset votes.\r\nReset the votes on this poll.','1,2,3,4,5'); INSERT INTO help VALUES (1,'SiteMap','English','Add/Edit','Site Map','Site maps are used to provide additional navigation in WebGUI. You could set up a traditional site map that would display a hierarchical view of all the pages in the site. On the other hand, you could use site maps to provide extra navigation at certain levels in your site.\r\n\r\nTitle\r\nWhat title would you give to this site map? You should fill this field out even if you don\'t wish it to be displayed.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nEnter a description as to why this site map is here and what purpose it serves.\r\n\r\nStarting from this level?\r\nIf the site map should display the page tree starting from this level, then check this box. If you wish the site map to start from the home page then uncheck it.\r\n\r\nShow only one level?\r\nShould the site map display only the current level of pages or all pages from this point forward? \r\n','1,2,3,4,5'); INSERT INTO help VALUES (1,'MessageBoard','English','Add/Edit','Message Board','Message boards, also called Forums and/or Discussions, are a great way to add community to any site or intranets. Many companies use message boards internally to collaborate on projects.\r\n\r\nTitle\r\nThe name of this board.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what should be displayed on this message board.\r\n\r\nWho can post?\r\nWhat group can post to this message board?\r\n\r\nMessages Per Page\r\nWhen a visitor first comes to a message board s/he will be presented with a listing of all the topics (aka threads) of the message board. If a board is popular, it will quickly have many topics. The messages per page attribute allows you to specify how many topics should be shown on one page.\r\n\r\nEdit Timeout\r\nHow long after a user has posted to the board will their message be available for them to edit. This timeout is measured in hours.\r\n\r\nNote: Don\'t set this limit too high. One of the great things about message boards is that they are an accurate record of a discussion. If you allow editing for a long time, then a user has a chance to go back and change his/her mind a long time after the original statement was made.\r\n','1,2,3,4,5'); -INSERT INTO help VALUES (1,'LinkList','English','Add/Edit','Link List','Link lists are just what they sound like, a list of links. Many sites have a links section, and this just automates the process.\r\n\r\nTitle\r\nWhat is the title of this link list?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the purpose of the links in this list.\r\n\r\nAdding / Editing Links\r\nYou\'ll notice at the bottom of the Edit screen that there are some options to add, edit, delete and reorder the links in your link lists. This process works exactly as the process for doing the same with widgets and pages. The three properties of links are name, url, and description.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'LinkList','English','Add/Edit','Link List','Link lists are just what they sound like, a list of links. Many sites have a links section, and this just automates the process.\r\n\r\nTitle\r\nWhat is the title of this link list?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the purpose of the links in this list.\r\n\r\nProceed to add link?\r\nLeave this checked if you want to add links to the link list directly after creating it.\r\n\r\nAdding / Editing Links\r\nYou\'ll notice at the bottom of the Edit screen that there are some options to add, edit, delete and reorder the links in your link lists. This process works exactly as the process for doing the same with widgets and pages. The three properties of links are name, url, and description.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (13,'WebGUI','English','Edit','Mail Settings','Recover Password Message\r\nThe message that gets sent to a user when they use the \"recover password\" function.\r\n\r\nSMTP Server\r\nThis is the address of your local mail server. It is needed for all features that use the Internet email system (such as password recovery).\r\n\r\n','6'); INSERT INTO help VALUES (1,'SyndicatedContent','English','Add/Edit','Syndicated Content','Syndicated content is content that is pulled from another site using the RDF/RSS specification. This technology is often used to pull headlines from various news sites like CNN and Slashdot. It can, of course, be used for other things like sports scores, stock market info, etc.\r\n\r\nYou can find a list of syndicated content at http://my.userland.com. You will need to register with an account to browse their listing of content. Also, the list contained there is by no means a complete list of all the syndicated content on the internet.\r\n\r\nTitle\r\nWhat is the title for this content? This is often the title of the site that the content comes from.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe the content being pulled so that your users will know what they are seeing.\r\n\r\nURL to RSS file\r\nProvide the exact URL (starting with http://) to the syndicated content\'s RDF or RSS file. The syndicated content will be downloaded from this URL hourly.','1,2,3,4,5'); -INSERT INTO help VALUES (1,'EventsCalendar','English','Add/Edit','Events Calendar','Events calendars are used on many intranets to keep track of internal dates that affect a whole organization. Also events calendars on consumer sites are a great way to let your customers know what events you\'ll be attending and what promotions you\'ll be having.\r\n\r\nTitle\r\nWhat is the title of this events calendar?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this events calendar details.\r\n\r\nAdd / Edit Events\r\nOn the edit screen you\'ll notice that there are options to add, edit, and delete the events in your events calendar. The properties for events are name, description, start date, and end date.\r\n\r\nNote: Events that have already happened will not be displayed on the events calendar.','1,2,3,4,5'); -INSERT INTO help VALUES (1,'FAQ','English','Add/Edit','F.A.Q.','It seems that almost every web site, intranet, and extranet in the world has a frequently asked questions area. This widget helps you build one too.\r\n\r\nTitle\r\nWhat is the title for this FAQ section?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this FAQ covers.\r\n\r\nAdd / Edit Questions\r\nOn the edit screen you\'ll notice options for adding, editing, deleting, and reordering the questions in your FAQ. The two properties of FAQ questions are question and answer.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'EventsCalendar','English','Add/Edit','Events Calendar','Events calendars are used on many intranets to keep track of internal dates that affect a whole organization. Also events calendars on consumer sites are a great way to let your customers know what events you\'ll be attending and what promotions you\'ll be having.\r\n\r\nTitle\r\nWhat is the title of this events calendar?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this events calendar details.\r\n\r\nProceed to add event?\r\nLeave this checked if you want to add events to the events calendar directly after creating it.\r\n\r\nAdd / Edit Events\r\nOn the edit screen you\'ll notice that there are options to add, edit, and delete the events in your events calendar. The properties for events are name, description, start date, and end date.\r\n\r\nNote: Events that have already happened will not be displayed on the events calendar.','1,2,3,4,5'); +INSERT INTO help VALUES (1,'FAQ','English','Add/Edit','F.A.Q.','It seems that almost every web site, intranet, and extranet in the world has a frequently asked questions area. This widget helps you build one too.\r\n\r\nTitle\r\nWhat is the title for this FAQ section?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this FAQ covers.\r\n\r\nProceed to add question?\r\nLeave this checked if you want to add questions to the FAQ directly after creating it.\r\n\r\nAdd / Edit Questions\r\nOn the edit screen you\'ll notice options for adding, editing, deleting, and reordering the questions in your FAQ. The two properties of FAQ questions are question and answer.\r\n','1,2,3,4,5'); INSERT INTO help VALUES (11,'WebGUI','English','Edit','File Settings','Path to WebGUI Extras\r\nThe web-path to the directory containing WebGUI images and javascript files.\r\n\r\nMaximum Attachment Size\r\nThe maximum size of files allowed to be uploaded to this site. This applies to all widgets that allow uploaded files and images (like Article and User Contributions). This size is measured in kilobytes.\r\n\r\nWeb Attachment Path\r\nThe web-path of the directory where attachments are to be stored.\r\n\r\nServer Attachment Path\r\nThe local path of the directory where attachments are to be stored. (Perhaps /var/www/public/uploads) Be sure that the web server has the rights to write to that directory.\r\n','6'); INSERT INTO help VALUES (2,'WebGUI','English','Edit','Authentication Settings','Anonymous Registration\r\nDo you wish visitors to your site to be able to register themselves?\r\n\r\nAuthentication Method (default)\r\nWhat should the default authentication method be for new accounts that are created? The two available options are WebGUI and LDAP. WebGUI authentication means that the users will authenticate against the username and password stored in the WebGUI database. LDAP authentication means that users will authenticate against an external LDAP server.\r\n\r\nNote: Authentication settings can be customized on a per user basis.\r\n\r\nUsername Binding\r\nBind the WebGUI username to the LDAP Identity. This requires the user to have the same username in WebGUI as they specified during the Anonymous Registration process. It also means that they won\'t be able to change their username later. This only in effect if the user is authenticating against LDAP.\r\n\r\nLDAP URL (default)\r\nThe default url to your LDAP server. The LDAP URL takes the form of ldap://[server]:[port]/[base DN]. Example: ldap://ldap.mycompany.com:389/o=MyCompany.\r\n\r\nLDAP Identity\r\nThe LDAP Identity is the unique identifier in the LDAP server that the user will be identified against. Often this field is shortname, which takes the form of first initial + last name. Example: jdoe. Therefore if you specify the LDAP identity to be shortname then Jon Doe would enter jdoe during the registration process.\r\n\r\nLDAP Identity Name\r\nThe label used to describe the LDAP Identity to the user. For instance, some companies use an LDAP server for their proxy server users to authenticate against. In the documentation or training already provided to their users, the LDAP identity is known as their Web Username. So you could enter that label here for consitency.\r\n\r\nLDAP Password Name\r\nJust as the LDAP Identity Name is a label, so is the LDAP Password Name. Use this label as you would LDAP Identity Name.\r\n\r\n','6'); INSERT INTO help VALUES (1,'UserSubmission','English','Add/Edit','User Submission System','User submission systems are a great way to add a sense of community to any site as well as get free content from your users.\r\n\r\nTitle\r\nWhat is the title for this user submission system?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe why this user submission system is here and what should be submitted to it.\r\n\r\nWho can contribute?\r\nWhat group is allowed to contribute content?\r\n\r\nSubmissions Per Page\r\nHow many submissions should be listed per page in the submissions index?\r\n\r\nDefault Status\r\nShould submissions be set to approved, pending, or denied by default?\r\n\r\nNote: If you set the default status to pending, then be prepared to monitor the pending queue under the Admin menu.\r\n','1,2,3,4,5'); @@ -1198,6 +1198,307 @@ INSERT INTO international VALUES (345,'WebGUI','Deutsch','Kein Mitglied'); INSERT INTO international VALUES (346,'WebGUI','Deutsch','Dieser Benutzer ist kein Mitglied. Wir haben keine weiteren Informationen über ihn.'); INSERT INTO international VALUES (347,'WebGUI','Deutsch','Profil anschauen von'); INSERT INTO international VALUES (349,'WebGUI','English','Latest version available'); +INSERT INTO international VALUES (259,'WebGUI','Español','Reporte SQL'); +INSERT INTO international VALUES (258,'WebGUI','Español','Editar Encuesta'); +INSERT INTO international VALUES (257,'WebGUI','Español','(Ingrese una por línea. No más de 20)'); +INSERT INTO international VALUES (255,'WebGUI','Español','Pregunta'); +INSERT INTO international VALUES (256,'WebGUI','Español','Respuestas'); +INSERT INTO international VALUES (254,'WebGUI','Español','Ancho del gráfico'); +INSERT INTO international VALUES (253,'WebGUI','Español','Quiénes pueden votar?'); +INSERT INTO international VALUES (251,'WebGUI','Español','Agregar Encuesta'); +INSERT INTO international VALUES (252,'WebGUI','Español','Activar'); +INSERT INTO international VALUES (250,'WebGUI','Español','Encuesta'); +INSERT INTO international VALUES (249,'WebGUI','Español','Última respuesta'); +INSERT INTO international VALUES (247,'WebGUI','Español','Inicio'); +INSERT INTO international VALUES (248,'WebGUI','Español','Respuestas'); +INSERT INTO international VALUES (246,'WebGUI','Español','Mandar Nuevo Mensage'); +INSERT INTO international VALUES (244,'WebGUI','Español','Autor'); +INSERT INTO international VALUES (245,'WebGUI','Español','Fecha'); +INSERT INTO international VALUES (243,'WebGUI','Español','Siguiente'); +INSERT INTO international VALUES (241,'WebGUI','Español','Anterior'); +INSERT INTO international VALUES (242,'WebGUI','Español','Volver a la Lista de Mensages'); +INSERT INTO international VALUES (239,'WebGUI','Español','Fecha:'); +INSERT INTO international VALUES (240,'WebGUI','Español','ID del mensage:'); +INSERT INTO international VALUES (237,'WebGUI','Español','Asunto:'); +INSERT INTO international VALUES (238,'WebGUI','Español','Autor:'); +INSERT INTO international VALUES (235,'WebGUI','Español','Editar mensage'); +INSERT INTO international VALUES (236,'WebGUI','Español','Responder'); +INSERT INTO international VALUES (234,'WebGUI','Español','Respondiendo...'); +INSERT INTO international VALUES (232,'WebGUI','Español','sin título'); +INSERT INTO international VALUES (233,'WebGUI','Español','(eom)'); +INSERT INTO international VALUES (231,'WebGUI','Español','Mandando Nuevo Mensage ...'); +INSERT INTO international VALUES (229,'WebGUI','Español','Asunto'); +INSERT INTO international VALUES (230,'WebGUI','Español','Mensage'); +INSERT INTO international VALUES (228,'WebGUI','Español','Editar Mensage...'); +INSERT INTO international VALUES (227,'WebGUI','Español','Editar Tabla de Mensages'); +INSERT INTO international VALUES (226,'WebGUI','Español','Timeout de edición'); +INSERT INTO international VALUES (225,'WebGUI','Español','Mensages por página'); +INSERT INTO international VALUES (224,'WebGUI','Español','Quienes pueden mandar?'); +INSERT INTO international VALUES (223,'WebGUI','Español','Table de Mensages'); +INSERT INTO international VALUES (222,'WebGUI','Español','Agregar Tabla de Mensages'); +INSERT INTO international VALUES (221,'WebGUI','Español','Agregar nuevo Enlace'); +INSERT INTO international VALUES (220,'WebGUI','Español','Editar Enlace'); +INSERT INTO international VALUES (218,'WebGUI','Español','Editar Lista de Enlaces'); +INSERT INTO international VALUES (219,'WebGUI','Español','Agregar Lista de Enlaces'); +INSERT INTO international VALUES (217,'WebGUI','Español','Está seguro de querer eliminar éste enlace?'); +INSERT INTO international VALUES (216,'WebGUI','Español','URL'); +INSERT INTO international VALUES (215,'WebGUI','Español','Agregar Enlace'); +INSERT INTO international VALUES (214,'WebGUI','Español','Lista de Enlaces'); +INSERT INTO international VALUES (213,'WebGUI','Español','Editar Pregunta'); +INSERT INTO international VALUES (212,'WebGUI','Español','Agregar nueva pregunta.'); +INSERT INTO international VALUES (211,'WebGUI','Español','Editar F.A.Q.'); +INSERT INTO international VALUES (209,'WebGUI','Español','Respuesta'); +INSERT INTO international VALUES (210,'WebGUI','Español','Está seguro de querer eliminar ésta pregunta?'); +INSERT INTO international VALUES (208,'WebGUI','Español','Pregunta'); +INSERT INTO international VALUES (207,'WebGUI','Español','Agregar Pregunta'); +INSERT INTO international VALUES (206,'WebGUI','Español','Agregar F.A.Q.'); +INSERT INTO international VALUES (205,'WebGUI','Español','F.A.Q.'); +INSERT INTO international VALUES (204,'WebGUI','Español','Editar Columna Extra'); +INSERT INTO international VALUES (203,'WebGUI','Español','Clase StyleSheet'); +INSERT INTO international VALUES (202,'WebGUI','Español','Ancho'); +INSERT INTO international VALUES (201,'WebGUI','Español','Espaciador'); +INSERT INTO international VALUES (200,'WebGUI','Español','Agregar Columna Extra'); +INSERT INTO international VALUES (199,'WebGUI','Español','Columna Extra'); +INSERT INTO international VALUES (198,'WebGUI','Español','Editar Evento'); +INSERT INTO international VALUES (197,'WebGUI','Español','Editar Calendario de Eventos'); +INSERT INTO international VALUES (196,'WebGUI','Español','y todos las recurrencias del mismo'); +INSERT INTO international VALUES (195,'WebGUI','Español','Está segugo de querer eliminar éste evento'); +INSERT INTO international VALUES (194,'WebGUI','Español','hasta'); +INSERT INTO international VALUES (193,'WebGUI','Español','Se repite cada'); +INSERT INTO international VALUES (192,'WebGUI','Español','Agregar Evento'); +INSERT INTO international VALUES (191,'WebGUI','Español','Semana'); +INSERT INTO international VALUES (187,'WebGUI','Español','Calendario de Eventos'); +INSERT INTO international VALUES (188,'WebGUI','Español','Agregar Calendario de Eventos'); +INSERT INTO international VALUES (189,'WebGUI','Español','Sucede solo una vez.'); +INSERT INTO international VALUES (190,'WebGUI','Español','Día'); +INSERT INTO international VALUES (186,'WebGUI','Español','Eliminar'); +INSERT INTO international VALUES (185,'WebGUI','Español','Editar Artículo'); +INSERT INTO international VALUES (184,'WebGUI','Español','(marque si no está agregando <br> manualmente.)'); +INSERT INTO international VALUES (183,'WebGUI','Español','Convertir saltos de carro?'); +INSERT INTO international VALUES (181,'WebGUI','Español','Link URL'); +INSERT INTO international VALUES (182,'WebGUI','Español','Adjuntar'); +INSERT INTO international VALUES (179,'WebGUI','Español','Imagen'); +INSERT INTO international VALUES (180,'WebGUI','Español','Link Título'); +INSERT INTO international VALUES (178,'WebGUI','Español','Cuerpo'); +INSERT INTO international VALUES (173,'WebGUI','Español','Agregar Artículo'); +INSERT INTO international VALUES (174,'WebGUI','Español','Mostrar el título?'); +INSERT INTO international VALUES (175,'WebGUI','Español','Procesar macros?'); +INSERT INTO international VALUES (176,'WebGUI','Español','Fecha Inicio'); +INSERT INTO international VALUES (177,'WebGUI','Español','Fecha finalización'); +INSERT INTO international VALUES (171,'WebGUI','Español','rich edit'); +INSERT INTO international VALUES (172,'WebGUI','Español','Artículo'); +INSERT INTO international VALUES (170,'WebGUI','Español','buscar'); +INSERT INTO international VALUES (169,'WebGUI','Español','Agregar nuevo usuario'); +INSERT INTO international VALUES (168,'WebGUI','Español','Editar Usuario'); +INSERT INTO international VALUES (166,'WebGUI','Español','Connect DN'); +INSERT INTO international VALUES (167,'WebGUI','Español','Está seguro de querer eliminar éste usuario? Tenga en cuenta que toda la información del usuario será eliminada permanentemente si procede.'); +INSERT INTO international VALUES (164,'WebGUI','Español','Método de Auntentificación'); +INSERT INTO international VALUES (165,'WebGUI','Español','LDAP URL'); +INSERT INTO international VALUES (163,'WebGUI','Español','Agregar usuario'); +INSERT INTO international VALUES (162,'WebGUI','Español','Está seguro de querer eliminar todos los elementos de la papelera?'); +INSERT INTO international VALUES (161,'WebGUI','Español','Contribuido por'); +INSERT INTO international VALUES (160,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (159,'WebGUI','Español','Contribuciones Pendientes'); +INSERT INTO international VALUES (156,'WebGUI','Español','Editar Estilo'); +INSERT INTO international VALUES (157,'WebGUI','Español','Estilos'); +INSERT INTO international VALUES (158,'WebGUI','Español','Agregar nuevo Estilo'); +INSERT INTO international VALUES (155,'WebGUI','Español','\"Está seguro de querer eliminar éste estilo y migrar todas la páginas que lo usen al estilo \"\"Fail Safe\"\"?\"'); +INSERT INTO international VALUES (152,'WebGUI','Español','Encabezado'); +INSERT INTO international VALUES (153,'WebGUI','Español','Pie'); +INSERT INTO international VALUES (154,'WebGUI','Español','Hoja de Estilo'); +INSERT INTO international VALUES (151,'WebGUI','Español','Nombre del Estilo'); +INSERT INTO international VALUES (150,'WebGUI','Español','Agregar Estilo'); +INSERT INTO international VALUES (149,'WebGUI','Español','Usuarios'); +INSERT INTO international VALUES (148,'WebGUI','Español','Widgets Visibles'); +INSERT INTO international VALUES (147,'WebGUI','Español','Páginas Visibles'); +INSERT INTO international VALUES (146,'WebGUI','Español','Sesiones activas'); +INSERT INTO international VALUES (145,'WebGUI','Español','Versión de WebGUI'); +INSERT INTO international VALUES (144,'WebGUI','Español','Ver estadísticas'); +INSERT INTO international VALUES (143,'WebGUI','Español','Configurar Opciones'); +INSERT INTO international VALUES (142,'WebGUI','Español','Timeout de sesión'); +INSERT INTO international VALUES (141,'WebGUI','Español','Página no encontrada'); +INSERT INTO international VALUES (139,'WebGUI','Español','No'); +INSERT INTO international VALUES (140,'WebGUI','Español','Editar configuraciones misceláneas'); +INSERT INTO international VALUES (138,'WebGUI','Español','Si'); +INSERT INTO international VALUES (135,'WebGUI','Español','Servidor SMTP'); +INSERT INTO international VALUES (136,'WebGUI','Español','Página de Inicio'); +INSERT INTO international VALUES (137,'WebGUI','Español','Página: Página No Encontrada'); +INSERT INTO international VALUES (133,'WebGUI','Español','Editar configuración de e-mail'); +INSERT INTO international VALUES (134,'WebGUI','Español','Mensage de Recuperar Password'); +INSERT INTO international VALUES (129,'WebGUI','Español','Camino a Extras de WebGUI'); +INSERT INTO international VALUES (130,'WebGUI','Español','Tamaño máximo de adjuntos'); +INSERT INTO international VALUES (131,'WebGUI','Español','Camino Web de los archivos adjuntos'); +INSERT INTO international VALUES (132,'WebGUI','Español','Camino en server de los archivos adjuntos'); +INSERT INTO international VALUES (128,'WebGUI','Español','Editar Opciones de Archivos'); +INSERT INTO international VALUES (124,'WebGUI','Español','Editar Información de la Companía'); +INSERT INTO international VALUES (125,'WebGUI','Español','Nombre de la Companía'); +INSERT INTO international VALUES (126,'WebGUI','Español','E-mail de la Companía'); +INSERT INTO international VALUES (127,'WebGUI','Español','URL de la Companía'); +INSERT INTO international VALUES (123,'WebGUI','Español','Password LDAP'); +INSERT INTO international VALUES (122,'WebGUI','Español','Nombre Identidad LDAP'); +INSERT INTO international VALUES (121,'WebGUI','Español','Identidad LDAP (por defecto)'); +INSERT INTO international VALUES (120,'WebGUI','Español','URL LDAP (por defecto)'); +INSERT INTO international VALUES (119,'WebGUI','Español','Método de Autentificación (por defecto)'); +INSERT INTO international VALUES (118,'WebGUI','Español','Registración Anónima'); +INSERT INTO international VALUES (117,'WebGUI','Español','Editar Opciones de Auntentificación'); +INSERT INTO international VALUES (116,'WebGUI','Español','Marque para dar éstos privilegios a todas las sub-páginas.'); +INSERT INTO international VALUES (115,'WebGUI','Español','Cualquiera puede editar?'); +INSERT INTO international VALUES (114,'WebGUI','Español','Cualquiera puede ver?'); +INSERT INTO international VALUES (113,'WebGUI','Español','Grupo puede editar?'); +INSERT INTO international VALUES (112,'WebGUI','Español','Grupo puede ver?'); +INSERT INTO international VALUES (111,'WebGUI','Español','Grupo'); +INSERT INTO international VALUES (110,'WebGUI','Español','Dueño puede editar?'); +INSERT INTO international VALUES (109,'WebGUI','Español','Dueño puede ver?'); +INSERT INTO international VALUES (108,'WebGUI','Español','Dueño'); +INSERT INTO international VALUES (107,'WebGUI','Español','Privilegios'); +INSERT INTO international VALUES (106,'WebGUI','Español','Marque para dar éste estilo a todas las sub-páginas.'); +INSERT INTO international VALUES (105,'WebGUI','Español','Estilo'); +INSERT INTO international VALUES (104,'WebGUI','Español','URL de la página'); +INSERT INTO international VALUES (103,'WebGUI','Español','Propio de la página'); +INSERT INTO international VALUES (102,'WebGUI','Español','Editar Página'); +INSERT INTO international VALUES (101,'WebGUI','Español','Está seguro de querer eliminar ésta página'); +INSERT INTO international VALUES (100,'WebGUI','Español','Meta Tags'); +INSERT INTO international VALUES (98,'WebGUI','Español','Agregar Página'); +INSERT INTO international VALUES (99,'WebGUI','Español','Título'); +INSERT INTO international VALUES (97,'WebGUI','Español','Ordenar por Objeto'); +INSERT INTO international VALUES (96,'WebGUI','Español','Ordenar por Acción'); +INSERT INTO international VALUES (94,'WebGUI','Español','Vea también'); +INSERT INTO international VALUES (95,'WebGUI','Español','Índice de Ayuda'); +INSERT INTO international VALUES (93,'WebGUI','Español','Ayuda'); +INSERT INTO international VALUES (92,'WebGUI','Español','Siguiente página'); +INSERT INTO international VALUES (91,'WebGUI','Español','Página previa'); +INSERT INTO international VALUES (90,'WebGUI','Español','Agregar nuevo grupo'); +INSERT INTO international VALUES (89,'WebGUI','Español','Grupos'); +INSERT INTO international VALUES (88,'WebGUI','Español','Usuarios en Grupo'); +INSERT INTO international VALUES (87,'WebGUI','Español','Editar Grupo'); +INSERT INTO international VALUES (86,'WebGUI','Español','Está segugo de querer eliminar éste grupo? Tenga en cuenta que la eliminación es permanente y removerá todos los privilegios asociados con el grupo.'); +INSERT INTO international VALUES (85,'WebGUI','Español','Descripción'); +INSERT INTO international VALUES (84,'WebGUI','Español','Nombre del Grupo'); +INSERT INTO international VALUES (83,'WebGUI','Español','Agregar Grupo'); +INSERT INTO international VALUES (82,'WebGUI','Español','Funciones Administrativas...'); +INSERT INTO international VALUES (81,'WebGUI','Español','La cuenta se actualizó con éxito!'); +INSERT INTO international VALUES (80,'WebGUI','Español','La cuenta se ha creado con éxito!'); +INSERT INTO international VALUES (78,'WebGUI','Español','Su password no concuerda. Trate de nuevo.'); +INSERT INTO international VALUES (79,'WebGUI','Español','No se puede conectar con el servidor LDAP'); +INSERT INTO international VALUES (77,'WebGUI','Español','El nombre de cuenta ya está en uso por otro miembro. Por favor trate con otro nombre de usuario. Los siguiente son algunas sugerencias:'); +INSERT INTO international VALUES (76,'WebGUI','Español','El e-mail no está en nuestra base de datos'); +INSERT INTO international VALUES (75,'WebGUI','Español','La información de su cuenta ha sido enviada a su e-mail-'); +INSERT INTO international VALUES (74,'WebGUI','Español','Información de la Cuenta'); +INSERT INTO international VALUES (73,'WebGUI','Español','Ingresar.'); +INSERT INTO international VALUES (72,'WebGUI','Español','recuperar'); +INSERT INTO international VALUES (71,'WebGUI','Español','Recuperar password'); +INSERT INTO international VALUES (70,'WebGUI','Español','Error'); +INSERT INTO international VALUES (69,'WebGUI','Español','Por favor contacte a su administrador por asistencia.'); +INSERT INTO international VALUES (68,'WebGUI','Español','La información de su cuenta no es válida. O la cuenta no existe'); +INSERT INTO international VALUES (67,'WebGUI','Español','Crear nueva Cuenta'); +INSERT INTO international VALUES (66,'WebGUI','Español','Ingresar'); +INSERT INTO international VALUES (65,'WebGUI','Español','Por favor desactive mi cuenta permanentemente'); +INSERT INTO international VALUES (64,'WebGUI','Español','Salir'); +INSERT INTO international VALUES (63,'WebGUI','Español','Encender Admin'); +INSERT INTO international VALUES (62,'WebGUI','Español','guardar'); +INSERT INTO international VALUES (61,'WebGUI','Español','Actualizar información de la Cuenta'); +INSERT INTO international VALUES (60,'WebGUI','Español','Está seguro que quiere desactivar su cuenta. Si continúa su información se perderá permanentemente.'); +INSERT INTO international VALUES (59,'WebGUI','Español','Perdí mi password'); +INSERT INTO international VALUES (58,'WebGUI','Español','Ya tengo una cuenta!'); +INSERT INTO international VALUES (57,'WebGUI','Español','Solo es necesaria si desea usar opciones que requieren e-mail.'); +INSERT INTO international VALUES (56,'WebGUI','Español','Dirección de e-mail'); +INSERT INTO international VALUES (55,'WebGUI','Español','Password (confirmar)'); +INSERT INTO international VALUES (54,'WebGUI','Español','Crear Cuenta'); +INSERT INTO international VALUES (53,'WebGUI','Español','Hacer página imprimible'); +INSERT INTO international VALUES (52,'WebGUI','Español','ingresar'); +INSERT INTO international VALUES (51,'WebGUI','Español','Password'); +INSERT INTO international VALUES (50,'WebGUI','Español','Nombre usuario'); +INSERT INTO international VALUES (49,'WebGUI','Español','\"Click aquí para salir.\"'); +INSERT INTO international VALUES (48,'WebGUI','Español','Hola'); +INSERT INTO international VALUES (47,'WebGUI','Español','Home'); +INSERT INTO international VALUES (46,'WebGUI','Español','Mi Cuenta'); +INSERT INTO international VALUES (45,'WebGUI','Español','No'); +INSERT INTO international VALUES (44,'WebGUI','Español','Si'); +INSERT INTO international VALUES (43,'WebGUI','Español','Está seguro de querer eliminar éste contenido?'); +INSERT INTO international VALUES (42,'WebGUI','Español','Por favor confirme'); +INSERT INTO international VALUES (41,'WebGUI','Español','Esta intentando eliminar un componente vital del sistema WebGUI. Si continúa puede causar un mal funcionamiento de WebGUI.'); +INSERT INTO international VALUES (40,'WebGUI','Español','Componente Vital'); +INSERT INTO international VALUES (39,'WebGUI','Español','No tiene suficientes privilegios para ingresar a ésta página.'); +INSERT INTO international VALUES (38,'WebGUI','Español','\"No tiene privilegios suficientes para realizar ésta operación. Por favor ingrese con una cuenta que posea los privilegios suficientes antes de intentar ésta operación.\"'); +INSERT INTO international VALUES (37,'WebGUI','Español','Permiso Denegado!'); +INSERT INTO international VALUES (36,'WebGUI','Español','Debe ser administrador para realizar esta tarea. Por favor contacte a uno de los administradores. La siguiente es una lista de los administradores de éste sistema:'); +INSERT INTO international VALUES (35,'WebGUI','Español','Funciones Administrativas'); +INSERT INTO international VALUES (34,'WebGUI','Español','fijar fecha'); +INSERT INTO international VALUES (33,'WebGUI','Español','Sabado'); +INSERT INTO international VALUES (32,'WebGUI','Español','Viernes'); +INSERT INTO international VALUES (31,'WebGUI','Español','Jueves'); +INSERT INTO international VALUES (30,'WebGUI','Español','Miércoles'); +INSERT INTO international VALUES (29,'WebGUI','Español','Martes'); +INSERT INTO international VALUES (28,'WebGUI','Español','Lunes'); +INSERT INTO international VALUES (26,'WebGUI','Español','Diciembre'); +INSERT INTO international VALUES (27,'WebGUI','Español','Domingo'); +INSERT INTO international VALUES (24,'WebGUI','Español','Octubre'); +INSERT INTO international VALUES (25,'WebGUI','Español','Noviembre'); +INSERT INTO international VALUES (23,'WebGUI','Español','Septiembre'); +INSERT INTO international VALUES (22,'WebGUI','Español','Agosto'); +INSERT INTO international VALUES (21,'WebGUI','Español','Julio'); +INSERT INTO international VALUES (20,'WebGUI','Español','Junio'); +INSERT INTO international VALUES (19,'WebGUI','Español','Mayo'); +INSERT INTO international VALUES (18,'WebGUI','Español','Abril'); +INSERT INTO international VALUES (17,'WebGUI','Español','Marzo'); +INSERT INTO international VALUES (16,'WebGUI','Español','Febrero'); +INSERT INTO international VALUES (15,'WebGUI','Español','Enero'); +INSERT INTO international VALUES (14,'WebGUI','Español','Ver contribuciones pendientes.'); +INSERT INTO international VALUES (13,'WebGUI','Español','Ver índice de Ayuda'); +INSERT INTO international VALUES (12,'WebGUI','Español','Apagar Admin'); +INSERT INTO international VALUES (11,'WebGUI','Español','Vaciar Papelera'); +INSERT INTO international VALUES (10,'WebGUI','Español','Ver Papelera'); +INSERT INTO international VALUES (9,'WebGUI','Español','Ver Portapapeles'); +INSERT INTO international VALUES (8,'WebGUI','Español','Ver Página No Encontrada'); +INSERT INTO international VALUES (7,'WebGUI','Español','Configurar Usuarios'); +INSERT INTO international VALUES (6,'WebGUI','Español','Configurar Estilos'); +INSERT INTO international VALUES (5,'WebGUI','Español','Configurar Grupos.'); +INSERT INTO international VALUES (4,'WebGUI','Español','Configurar Opciones.'); +INSERT INTO international VALUES (3,'WebGUI','Español','Pegar desde el Portapapeles...'); +INSERT INTO international VALUES (2,'WebGUI','Español','Página'); +INSERT INTO international VALUES (1,'WebGUI','Español','Agregar Contenido ...'); +INSERT INTO international VALUES (260,'WebGUI','Español','Agregar Reporte SQL'); +INSERT INTO international VALUES (261,'WebGUI','Español','Modelo'); +INSERT INTO international VALUES (262,'WebGUI','Español','Consulta'); +INSERT INTO international VALUES (263,'WebGUI','Español','DSN'); +INSERT INTO international VALUES (264,'WebGUI','Español','Usuario de la Base de Datos'); +INSERT INTO international VALUES (265,'WebGUI','Español','Password de la Base de Datos'); +INSERT INTO international VALUES (266,'WebGUI','Español','Editar Reporte SQL'); +INSERT INTO international VALUES (267,'WebGUI','Español','Error: El DSN especificado está en un formato incorrecto.'); +INSERT INTO international VALUES (268,'WebGUI','Español','Error: El SQL especificado está en un formato incorrecto.'); +INSERT INTO international VALUES (269,'WebGUI','Español','Error: Hay un problema con la consulta.'); +INSERT INTO international VALUES (270,'WebGUI','Español','Error: No se puede conectar a la base de datos.'); +INSERT INTO international VALUES (277,'WebGUI','Español','Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (278,'WebGUI','Español','Agregar Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (279,'WebGUI','Español','Quiénes pueden contribuir?'); +INSERT INTO international VALUES (280,'WebGUI','Español','Contribuciones por página'); +INSERT INTO international VALUES (281,'WebGUI','Español','Aprobado'); +INSERT INTO international VALUES (282,'WebGUI','Español','Denegado'); +INSERT INTO international VALUES (283,'WebGUI','Español','Pendiente'); +INSERT INTO international VALUES (284,'WebGUI','Español','Estado por defecto'); +INSERT INTO international VALUES (285,'WebGUI','Español','Contribuir'); +INSERT INTO international VALUES (286,'WebGUI','Español','(desmarque si está escribiendo la contribución en HTML.)'); +INSERT INTO international VALUES (287,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (288,'WebGUI','Español','Estado'); +INSERT INTO international VALUES (289,'WebGUI','Español','Editar/Eliminar'); +INSERT INTO international VALUES (290,'WebGUI','Español','Sin título'); +INSERT INTO international VALUES (291,'WebGUI','Español','Está seguro de querer eliminar ésta contribución?'); +INSERT INTO international VALUES (292,'WebGUI','Español','Editar Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (293,'WebGUI','Español','Editar Contribución'); +INSERT INTO international VALUES (294,'WebGUI','Español','Nueva Contribución'); +INSERT INTO international VALUES (295,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (296,'WebGUI','Español','Contribuida por'); +INSERT INTO international VALUES (297,'WebGUI','Español','Contribuida por:'); +INSERT INTO international VALUES (298,'WebGUI','Español','Fecha Contribución:'); +INSERT INTO international VALUES (299,'WebGUI','Español','Aprobar'); +INSERT INTO international VALUES (300,'WebGUI','Español','Dejan pendiente'); +INSERT INTO international VALUES (301,'WebGUI','Español','Denegar'); +INSERT INTO international VALUES (302,'WebGUI','Español','Editar'); +INSERT INTO international VALUES (303,'WebGUI','Español','Regresar a lista de contribuciones'); +INSERT INTO international VALUES (304,'WebGUI','Español','Idioma'); +INSERT INTO international VALUES (1,'FAQ','English','Proceed to add question?'); +INSERT INTO international VALUES (5,'LinkList','English','Proceed to add link?'); +INSERT INTO international VALUES (1,'EventsCalendar','English','Proceed to add event?'); # # Table structure for table 'message' @@ -1330,7 +1631,7 @@ INSERT INTO settings VALUES ('profileExtraContact','1'); INSERT INTO settings VALUES ('profileMisc','1'); INSERT INTO settings VALUES ('profileHome','0'); INSERT INTO settings VALUES ('profileWork','0'); -INSERT INTO settings VALUES ('VERSION','2.3.3'); +INSERT INTO settings VALUES ('VERSION','2.3.4'); # # Table structure for table 'style' diff --git a/docs/upgrades/upgrade_2.3.4-2.4.0.sql b/docs/upgrades/upgrade_2.3.4-2.4.0.sql new file mode 100644 index 000000000..8c4fd439e --- /dev/null +++ b/docs/upgrades/upgrade_2.3.4-2.4.0.sql @@ -0,0 +1,1076 @@ +create table messageLog ( +messageLogId int not null, +userId int not null, +message text, +url text, +dateOfEntry int, +primary key (messageLogId,userId) +); +alter table UserSubmission add column groupToApprove int not null default 4; +alter table SiteMap change showOnlyThisLevel depth int not null default 0; +alter table SiteMap add column indent int not null default 5; +alter table SiteMap add column bullet varchar(30) not null default '·'; +alter table SiteMap add column lineSpacing int not null default 1; +alter table message add column subId int; +alter table message rename discussion; +delete from help; +INSERT INTO help VALUES (1,'WebGUI','English','Add/Edit','Page','Think of pages as containers for content. For instance, if you want to write a letter to the editor of your favorite magazine you\'d get out a notepad (or open a word processor) and start filling it with your thoughts. The same is true with WebGUI. Create a page, then add your content to the page.\r\n\r\nTitle\r\nThe title of the page is what your users will use to navigate through the site. Titles should be descriptive, but not very long.\r\n\r\nPage URL\r\nWhen you create a page a url for the page is generated based on the page title. If you are unhappy with the url that was chosen, you can change it here.\r\n\r\nMeta Tags\r\nMeta tags are used by some search engines to associate key words to a particular page. There is a great site called Meta Tag Builder that will help you build meta tags if you\'ve never done it before.\r\n\r\nAdvanced Users: If you have other things (like JavaScript) you usually put in the <head> area of your pages, you may put them here as well.\r\n\r\nUse default meta tags?\r\nIf you don\'t wish to specify meta tags yourself, WebGUI can generate meta tags based on the page title and your company\'s name. Check this box to enable the defaultly generated meta tags.\r\n\r\nStyle\r\nBy default, when you create a page, it inherits a few traits from its parent. One of those traits is style. Choose from the list of styles if you would like to change the appearance of this page. See Add Style for more details.\r\n\r\nIf you check the box below to the style pull-down menu, all of the pages below this page will take on the style you\'ve chosen for this page.\r\n\r\nOwner\r\nThe owner of a page is usually the person who created the page.\r\n\r\nOwner can view?\r\nCan the owner view the page or not?\r\n\r\nOwner can edit?\r\nCan the owner edit the page or not? Be careful, if you decide that the owner cannot edit the page and you do not belong to the page group, then you\'ll lose the ability to edit this page.\r\n\r\nGroup\r\nA group is assigned to every page for additional privilege control. Pick a group from the pull-down menu.\r\n\r\nGroup can view?\r\nCan members of this group view this page?\r\n\r\nGroup can edit?\r\nCan members of this group edit this page?\r\n\r\nAnybody can view?\r\nCan any visitor or member regardless of the group and owner view this page?\r\n\r\nAnybody can edit?\r\nCan any visitor or member regardless of the group and owner edit this page?\r\n\r\nYou can optionally give these privileges to all pages under this page.\r\n','0'); +INSERT INTO help VALUES (3,'WebGUI','English','Delete','Page','Deleting a page can create a big mess if you are uncertain about what you are doing. When you delete a page you are also deleting the content it contains, all sub-pages connected to this page, and all the content they contain. Be certain that you have already moved all the content you wish to keep before you delete a page.\r\n\r\nAs with any delete operation, you are prompted to be sure you wish to proceed with the delete. If you answer yes, the delete will proceed and there is no recovery possible. If you answer no you\'ll be returned to the prior screen.','0'); +INSERT INTO help VALUES (4,'WebGUI','English','Delete','Style','When you delete a style all pages using that style will be reverted to the fail safe (default) style. To ensure uninterrupted viewing, you should be sure that no pages are using a style before you delete it.\r\n\r\nAs with any delete operation, you are prompted to be sure you wish to proceed with the delete. If you answer yes, the delete will proceed and there is no recovery possible. If you answer no you\'ll be returned to the prior screen.','4,5'); +INSERT INTO help VALUES (5,'WebGUI','English','Add/Edit','User','See Manage Users for additional details.\r\n\r\nUsername\r\nUsername is a unique identifier for a user. Sometimes called a handle, it is also how the user will be known on the site. (Note: Administrators have unlimited power in the WebGUI system. This also means they are capable of breaking the system. If you rename or create a user, be careful not to use a username already in existance.)\r\n\r\nPassword\r\nA password is used to ensure that the user is who s/he says s/he is.\r\n\r\nAuthentication Method\r\nSee Edit Settings for details.\r\n\r\nLDAP URL\r\nSee Edit Settings for details.\r\n\r\nConnect DN\r\nThe Connect DN is the cn (or common name) of a given user in your LDAP database. It should be specified as cn=John Doe. This is, in effect, the username that will be used to authenticate this user against your LDAP server.\r\n\r\nEmail Address\r\nThe user\'s email address. This must only be specified if the user will partake in functions that require email.\r\n\r\nGroups\r\nGroups displays which groups the user is in. Groups that are highlighted are groups that the user is assigned to. Those that are not highlighted are other groups that can be assigned. Note that you must hold down CTRL to select multiple groups.\r\n\r\nLanguage\r\nWhat language should be used to display system related messages.\r\n\r\nICQ UIN\r\nThe ICQ UIN is the \"User ID Number\" on the ICQ network. ICQ is a very popular instant messaging platform.\r\n\r\n','0'); +INSERT INTO help VALUES (7,'WebGUI','English','Delete','User','There is no need to ever actually delete a user. If you are concerned with locking out a user, then simply change their password. If you truely wish to delete a user, then please keep in mind that there are consequences. If you delete a user any content that they added to the site via widgets (like message boards and user contributions) will remain on the site. However, if another user tries to visit the deleted user\'s profile they will get an error message. Also if the user ever is welcomed back to the site, there is no way to give him/her access to his/her old content items except by re-adding the user to the users table manually.\r\n\r\nAs with any delete operation, you are prompted to be sure you wish to proceed with the delete. If you answer yes, the delete will proceed and there is no recovery possible. If you answer no you\'ll be returned to the prior screen.','0'); +INSERT INTO help VALUES (8,'WebGUI','English','Manage','User','Users are the accounts in the system that are given rights to do certain things. There are two default users built into the system: Admin and Visitor.\r\n\r\nAdmin\r\nAdmin is exactly what you\'d expect. It is a user with unlimited rights in the WebGUI environment. If it can be done, this user has the rights to do it.\r\n\r\nVisitor\r\nVisitor is exactly the opposite of Admin. Visitor has no rights what-so-ever. By default any user who is not logged in is seen as the user Visitor.\r\n\r\nAdd a new user.\r\nClick on this to go to the add user screen.\r\n\r\nSearch\r\nYou can search users based on username and email address. You can do partial searches too if you like.','0'); +INSERT INTO help VALUES (9,'WebGUI','English','Manage','Style','Styles are used to manage the look and feel of your WebGUI pages. With WebGUI, you can have an unlimited number of styles, so your site can take on as many looks as you like. You could have some pages that look like your company\'s brochure, and some pages that look like Yahoo!®. You could even have some pages that look like pages in a book. Using style management, you have ultimate control over all your designs.\r\n\r\nThere are three styles built in to WebGUI: Fail Safe, Plain Black Software, and Yahoo!®. These styles are not meant to be edited, but rather to give you samples of what\'s possible.\r\n\r\nFail Safe\r\nWhen you delete a style that is still in use on some pages, the Fail Safe style will be applied to those pages. This style has a white background and simple navigation.\r\n\r\nPlain Black Software\r\nThis is the simple design used on the Plain Black Software site.\r\n\r\nYahoo!®\r\nThis is the design of the Yahoo!® site. (Yahoo!® has not given us permission to use their design. It is simply an example.)','4,5'); +INSERT INTO help VALUES (10,'WebGUI','English','Manage','Group','Groups are used to subdivide privileges and responsibilities within the WebGUI system. For instance, you may be building a site for a classroom situation. In that case you might set up a different group for each class that you teach. You would then apply those groups to the pages that are designed for each class.\r\n\r\nThere are four groups built into WebGUI. They are Admins, Content Managers, Visitors, and Registered Users.\r\n\r\nAdmins\r\nAdmins are users who have unlimited privileges within WebGUI. A user should only be added to the admin group if they oversee the system. Usually only one to three people will be added to this group.\r\n\r\nContent Managers\r\nContent managers are users who have privileges to add, edit, and delete content from various areas on the site. The content managers group should not be used to control individual content areas within the site, but to determine whether a user can edit content at all. You should set up additional groups to separate content areas on the site.\r\n\r\nRegistered Users\r\nWhen users are added to the system they are put into the registered users group. A user should only be removed from this group if their account is deleted or if you wish to punish a troublemaker.\r\n\r\nVisitors\r\nVisitors are users who are not logged in using an account on the system. Also, if you wish to punish a registered user you could remove him/her from the Registered Users group and insert him/her into the Visitors group.','0'); +INSERT INTO help VALUES (12,'WebGUI','English','Manage','Settings','Settings are items that allow you to adjust WebGUI to your particular needs.\r\n\r\nEdit Authentication Settings\r\nSettings concerning user identification and login, such as LDAP.\r\n\r\nEdit Company Information\r\nInformation specific about the company or individual who controls this installation of WebGUI.\r\n\r\nEdit File Settings\r\nSettings concerning attachments and images.\r\n\r\nEdit Mail Settings\r\nSettings concerning email and related functions.\r\n\r\nEdit Miscellaneous Settings\r\nEverything else.\r\n\r\n','7,8,9.10,11,12'); +INSERT INTO help VALUES (14,'WebGUI','English','Delete','Widget','This function permanently deletes the selected widget from a page. If you are unsure whether you wish to delete this content you may be better served to cut the content to the clipboard until you are certain you wish to delete it.\r\n\r\nAs with any delete operation, you are prompted to be sure you wish to proceed with the delete. If you answer yes, the delete will proceed and there is no recovery possible. If you answer no you\'ll be returned to the prior screen.','0'); +INSERT INTO help VALUES (15,'WebGUI','English','Delete','Group','As the function suggests you\'ll be deleting a group and removing all users from the group. Be careful not to orphan users from pages they should have access to by deleting a group that is in use.\r\n\r\nAs with any delete operation, you are prompted to be sure you wish to proceed with the delete. If you answer yes, the delete will proceed and there is no recovery possible. If you answer no you\'ll be returned to the prior screen.','0'); +INSERT INTO help VALUES (16,'WebGUI','English','Add/Edit','Style','Styles are WebGUI macro enabled. See Using Macros for more information.\r\n\r\nStyle Name\r\nA unique name to describe what this style looks like at a glance. The name has no effect on the actual look of the style.\r\n\r\nHeader\r\nThe header is the start of the look of your site. It is helpful to look at your design and cut it into three pieces. The top and left of your design is the header. The center part is the content, and the right and bottom is the footer. Cut the HTML from your header and paste it in the space provided.\r\n\r\nIf you are in need of assistance for creating a look for your site, or if you need help cutting apart your design, Plain Black Software provides support services for a small fee.\r\n\r\nMany people will add WebGUI macros to their header for automated navigation, and other features.\r\n\r\nFooter\r\nThe footer is the end of the look for your site. It is the right and bottom portion of your design. You may also place WebGUI macros in your footer.\r\n\r\nStyle Sheet\r\nPlace your style sheet entries here. Style sheets are used to control colors, sizes, and other properties of the elements on your site. See Using Style Sheets for more information.\r\n\r\nAdvanced Users: for greater performance create your stylesheet on the file system (call it something like webgui.css) and add an entry like this to this area: \r\n<link href=\"/webgui.css\" rel=\"stylesheet\" rev=\"stylesheet\" type=\"text/css\">','4,5'); +INSERT INTO help VALUES (17,'WebGUI','English','Add/Edit','Group','See Manage Group for a description of grouping functions and the default groups.\r\n\r\nGroup Name\r\nA name for the group. It is best if the name is descriptive so you know what it is at a glance.\r\n\r\nDescription\r\nA longer description of the group so that other admins and content managers (or you if you forget) will know what the purpose of this group is.','0'); +INSERT INTO help VALUES (24,'WebGUI','English','Edit','Miscellaneous Settings','Not Found Page\r\nIf a page that a user requests is not found in the system, the user can be redirected to the home page or to an error page where they can attempt to find what they were looking for. You decide which is better for your users.\r\n\r\nSession Timeout\r\nThe time (in seconds) that a user session remains active (before needing to log in again). This timeout is reset each time a visitor hits a page. Therefore if you set the timeout for 8 hours, a user would have to log in again if s/he hadn\'t visited the site for 8 hours.\r\n\r\n1800 = half hour\r\n3600 = 1 hour\r\n28000 = 8 hours\r\n86400 = 1 day\r\n604800 = 1 week\r\n1209600 = 2 weeks\r\n','6'); +INSERT INTO help VALUES (18,'WebGUI','English','Using','Style Sheets','Cascading Style Sheets (CSS) are a great way to manage the look and feel of any web site. They are used extensively in WebGUI.\r\n\r\nIf you are unfamiliar with how to use CSS, Plain Black Software provides training classes on XHTML and CSS. Alternatively, Bradsoft makes an excellent CSS editor called Top Style.\r\n\r\nThe following is a list of classes used to control the look of WebGUI:\r\n\r\nA\r\nThe links throughout the style.\r\n\r\nBODY\r\nThe default setup of all pages within a style.\r\n\r\nH1\r\nThe headers on every page.\r\n\r\n.accountOptions\r\nThe links that appear under the login and account update forms.\r\n\r\n.adminBar \r\nThe bar that appears at the top of the page when you\'re in admin mode.\r\n\r\n.content\r\nThe main content area on all pages of the style.\r\n\r\n.crumbTrail \r\nThe crumb trail (if you\'re using that macro).\r\n\r\n.formDescription \r\nThe tags on all forms next to the form elements. \r\n\r\n.formSubtext \r\nThe tags below some form elements.\r\n\r\n.highlight \r\nDenotes a highlighted item, such as which message you are viewing within a list.\r\n\r\n.homeLink\r\nUsed by the my home (^H) macro.\r\n\r\n.horizontalMenu \r\nThe horizontal menu (if you use a horizontal menu macro).\r\n\r\n.loginBox\r\nThe login box (^L) macro.\r\n\r\n.makePrintableLink\r\nUsed by the make printable (^r) macro.\r\n\r\n.myAccountLink\r\nUsed by the my account (^a) macro.\r\n\r\n.pagination \r\nThe Previous and Next links on pages with pagination.\r\n\r\n.tableData \r\nThe data rows on things like message boards and user contributions.\r\n\r\n.tableHeader \r\nThe headings of columns on things like message boards and user contributions.\r\n\r\n.tableMenu \r\nThe menu on things like message boards and user submissions.\r\n\r\n.verticalMenu \r\nThe vertical menu (if you use a verticall menu macro).\r\n\r\nNote: Some widgets have their own unique styles.\r\n\r\n','0'); +INSERT INTO help VALUES (19,'WebGUI','English','Using','Macros','WebGUI macros are used to create dynamic content within otherwise static content. For instance, you may wish to show which user is logged in on every page, or you may wish to have a dynamically built menu or crumb trail. \r\n\r\nMacros always begin with a carat (^) and follow with at least one other character and ended with w semicolon (;). Some macros can be extended/configured by taking the format of ^x(\"config text\");. The following is a description of all the macros in the WebGUI system.\r\n\r\n^a; or ^a(\"new link title\"); - My Account Link\r\nA link to your account information. In addition you can change the link text by creating a macro like this ^a(\"Account Info\");.\r\n\r\n^C; - Crumb Trail\r\nA dynamically generated crumb trail to the current page.\r\n\r\n^c; - Company Name\r\nThe name of your company specified in the settings by your Administrator.\r\n\r\n^D; or ^D(\"%c %D, %y\"); - Date\r\nThe current date and time.\r\n\r\nYou can configure the date by using date formatting symbols. For instance, if you created a macro like this ^D(\"%c %D, %y\"); it would output September 26, 2001. The following are the available date formatting symbols:\r\n\r\n %% = %\r\n %y = 4 digit year\r\n %Y = 2 digit year\r\n %m = 2 digit month\r\n %M = variable digit month\r\n %c = month name\r\n %d = 2 digit day of month\r\n %D = variable digit day of month\r\n %w = day of week name\r\n %h = 2 digit base 12 hour\r\n %H = variable digit base 12 hour\r\n %j = 2 digit base 24 hour\r\n %J = variable digit base 24 hour\r\n %p = lower case am/pm\r\n %P = upper case AM/PM\r\n\r\n^e; - Company Email Address\r\nThe email address for your company specified in the settings by your Administrator.\r\n\r\n^H; or ^H(\"Go Home\"); - Home Link\r\nA link to the home page of this site. In addition you can change the link text by creating a macro like this ^H(\"Go Home\");.\r\n\r\n^L; - Login\r\nA small login form.\r\n\r\n^M; or ^M(3); - Current Menu (Vertical)\r\nA vertical menu containing the sub-pages at the current level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^M(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^m; - Current Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the current level.\r\n\r\n^P; or ^P(3); - Previous Menu (Vertical)\r\nA vertical menu containing the sub-pages at the previous level. In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^P(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^p; - Previous Menu (Horizontal)\r\nA horizontal menu containing the sub-pages at the previous level.\r\n\r\n^r; or ^r(\"Print Me!\"); - Make Page Printable\r\nCreates a link to remove the style from a page to make it printable. In addition, you can change the link text by creating a macro like this ^r(\"Print Me!\");.\r\n\r\n^S(\"home\",0); - Specific SubMenu (Vertical)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^S(\"home\",0);. The first value is the urlized title of the page and the second value is the depth you\'d like the menu to go. By default it will show only the first level. To go three levels deep create a macro like this ^S(\"home\",3);.\r\n\r\n^s(\"home\"); - Specific SubMenu (Horizontal)\r\nThis macro allows you to get the submenu of any page, starting with the page you specified. For instance, you could get the home page submenu by creating a macro that looks like this ^s(\"home\");. The value is the urlized title of the page.\r\n\r\n^T; or ^T(3); - Top Level Menu (Vertical)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page). In addition, you may configure this macro by specifying how many levels deep the menu should go. By default it will show only the first level. To go three levels deep create a macro like this ^T(3);. If you set the macro to \"0\" it will track the entire site tree.\r\n\r\n^t; - Top Level Menu (Horizontal)\r\nA vertical menu containing the main pages of the site (aka the sub-pages from the home page).\r\n\r\n^u; - Company URL\r\nThe URL for your company specified in the settings by your Administrator.\r\n\r\n^/; - System URL\r\nThe URL to the gateway script (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^\\; - Page URL\r\nThe URL to the current page (including the domain for this site). This is often used within pages so that if your development server is on a domain different than your production server that your URLs will still worked when moved.\r\n\r\n^@; - Username\r\nThe username of the currently logged in user.\r\n\r\n^#; - User ID\r\nThe user id of the currently logged in user.\r\n\r\n^*; or ^*(100); - Random Number\r\nA randomly generated number. This is often used on images (such as banner ads) that you want to ensure do not cache. In addition, you may configure this macro like this ^*(100); to create a random number between 0 and 100.\r\n\r\n^0;,^1;,^2;,^3;,^4;,^5;,^6;,^7;,^8;,^9;, ^-;\r\nThese macros are reserved for widget-specific functions as in the SQL Report widget.\r\n','0'); +INSERT INTO help VALUES (1,'SQLReport','English','Add/Edit','SQL Report','SQL Reports are perhaps the most powerful widget in the WebGUI arsenal. They allow a user to query data from any database that they have access to. This is great for getting sales figures from your Accounting database or even summarizing all the message boards on your web site.\r\n\r\nTitle\r\nThe title of this report.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the content of this report so your users will better understand what the report is all about.\r\n\r\nTemplate\r\nLayout a template of how this report should look. Usually you\'ll use HTML tables to generate a report. An example is included below.\r\n\r\nThere are 11 special macro characters used in generating SQL Reports. They are ^-;, ^0;, ^1;, ^2;, ^3;, ^4;, ^5;, ^6;, ^7;, ^8;, and ^9;. These macros will be processed regardless of whether you checked the process macros box above. The ^- macro represents split points in the document where the report will begin and end looping. The numeric macros represent the data fields that will be returned from your query. Note that you may only have 10 fields returned per row in your query.\r\n\r\nSample Template:\r\n<table>\r\n<tr><th>Employee Name</th><th>Employee #</th><th>Vacation Days Remaining</th><th>Monthly Salary</th></tr>\r\n^-;\r\n<tr><td>^0;</td><td>^1;</td><td>^2;</td><td>^3;</td></tr>\r\n^-;\r\n</table>\r\n\r\nQuery\r\nThis is a standard SQL query. If you are unfamiliar with SQL, Plain Black Software provides training courses in SQL and database management.\r\n\r\nDSN\r\nData Source Name is the unique identifier that Perl uses to describe the location of your database. It takes the format of DBI:[driver]:[database name]:[host]. \r\n\r\nExample: DBI:mysql:WebGUI:localhost\r\n\r\nDatabase User\r\nThe username you use to connect to the DSN.\r\n\r\nDatabase Password\r\nThe password you use to connect to the DSN.\r\n\r\nConvert carriage returns?\r\nDo you wish to convert the carriage returns in the resultant data to HTML breaks (<br>).\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (21,'WebGUI','English','Using','Widget','Widgets are the true power of WebGUI. Widgets are tiny pluggable applications built to run under WebGUI. Message boards and polls are examples of widgets.\r\n\r\nTo add a widget to a page, first go to that page, then select Add Content... from the upper left corner of your screen. Each widget has it\'s own help so be sure to read the help if you\'re not sure how to use a widget.\r\n','0'); +INSERT INTO help VALUES (1,'Article','English','Add/Edit','Article','Articles are the Swiss Army knife of WebGUI. Most pieces of static content can be added via the Article widget.\r\n\r\nTitle\r\nWhat\'s the title for this content? Even if you don\'t wish the title to appear, it\'s a good idea to title your content so that if it is ever copied to the clipboard it will have a name.\r\n\r\nDisplay the title?\r\nDo you wish to display the title listed above?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros on this article? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nStart Date\r\nWhat date do you want this article to appear on the site? Dates are in the format of MM/DD/YYYY. You can use the JavaScript wizard to choose your date from a calendar by clicking on the set date button. By default the date is set to 01/01/2000.\r\n\r\nEnd Date\r\nWhat date do you want this article to be removed from the site? By default the date is set to 100 years in the future, 01/01/2100.\r\n\r\nBody\r\nThe body of the article is where all the content goes. You may feel free to add HTML tags as necessary to format your content. Be sure to put a <p> between paragraphs to add white space to your content.\r\n\r\nImage\r\nChoose an image (.jpg, .gif, .png) file from your hard drive. This file will be uploaded to the server and displayed in the upper-right corner of your article.\r\n\r\nLink Title\r\nIf you wish to add a link to your article, enter the title of the link in this field. \r\n\r\nExample: Google\r\n\r\nLink URL\r\nIf you added a link title, now add the URL (uniform resource locator) here. \r\n\r\nExample: http://www.google.com\r\n\r\nAttachment\r\nIf you wish to attach a word processor file, a zip file, or any other file for download by your users, then choose it from your hard drive.\r\n\r\nConvert carriage returns?\r\nIf you\'re publishin HTML there\'s generally no need to check this option, but if you aren\'t using HTML and you want a carriage return every place you hit your \"Enter\" key, then check this option.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'ExtraColumn','English','Add/Edit','Extra Column','Extra columns allow you to change the layout of your page for one page only. If you wish to have multiple columns on all your pages. Perhaps you should consider altering the style applied to your pages. \r\n\r\nColumns are always added from left to right. Therefore any existing content will be on the left of the new column.\r\n\r\nSpacer\r\nSpacer is the amount of space between your existing content and your new column. It is measured in pixels.\r\n\r\nWidth\r\nWidth is the actual width of the new column to be added. Width is measured in pixels.\r\n\r\nStyleSheet Class\r\nBy default the content style (which is the style the body of your site should be using) that is applied to all columns. However, if you\'ve created a style specifically for columns, then feel free to modify this class.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (27,'WebGUI','English','Add/Edit','Widget','You can add widgets by selecting from the Add Content pulldown menu. You can edit them by clicking on the \"Edit\" button that appears directly above an instance of a particular widget.','0'); +INSERT INTO help VALUES (1,'Poll','English','Add/Edit','Poll','Polls can be used to get the impressions of your users on various topics.\r\n\r\nTitle\r\nThe title of the poll. Even if you don\'t wish to display the title you should fill out this field so this poll will have a name if it is ever placed in the clipboard.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nYou may provide a description for this poll, or give the user some background information.\r\n\r\nActive\r\nIf this box is checked, then users will be able to vote. Otherwise they\'ll only be able to see the results of the poll.\r\n\r\nWho can vote?\r\nChoose a group that can vote on this poll.\r\n\r\nGraph Width\r\nThe width of the poll results graph. The width is measured in pixels.\r\n\r\nQuestion\r\nWhat is the question you\'d like to ask your users?\r\n\r\nAnswers\r\nEnter the possible answers to your question. Enter only one answer per line. Polls are only capable of 20 possible answers.\r\n\r\nReset votes.\r\nReset the votes on this poll.\r\n\r\n
\r\nNote: The following style sheet entries are custom to the Poll widget:\r\n\r\n.pollAnswer \r\nAn answer on a poll.\r\n\r\n.pollColor \r\nThe color of the percentage bar on a poll.\r\n\r\n.pollQuestion \r\nThe question on a poll.\r\n\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'SiteMap','English','Add/Edit','Site Map','Site maps are used to provide additional navigation in WebGUI. You could set up a traditional site map that would display a hierarchical view of all the pages in the site. On the other hand, you could use site maps to provide extra navigation at certain levels in your site.\r\n\r\nTitle\r\nWhat title would you give to this site map? You should fill this field out even if you don\'t wish it to be displayed.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nEnter a description as to why this site map is here and what purpose it serves.\r\n\r\nStarting from this level?\r\nIf the site map should display the page tree starting from this level, then check this box. If you wish the site map to start from the home page then uncheck it.\r\n\r\nShow only one level?\r\nShould the site map display only the current level of pages or all pages from this point forward? \r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'MessageBoard','English','Add/Edit','Message Board','Message boards, also called Forums and/or Discussions, are a great way to add community to any site or intranets. Many companies use message boards internally to collaborate on projects.\r\n\r\nTitle\r\nThe name of this board.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what should be displayed on this message board.\r\n\r\nWho can post?\r\nWhat group can post to this message board?\r\n\r\nMessages Per Page\r\nWhen a visitor first comes to a message board s/he will be presented with a listing of all the topics (aka threads) of the message board. If a board is popular, it will quickly have many topics. The messages per page attribute allows you to specify how many topics should be shown on one page.\r\n\r\nEdit Timeout\r\nHow long after a user has posted to the board will their message be available for them to edit. This timeout is measured in hours.\r\n\r\nNote: Don\'t set this limit too high. One of the great things about message boards is that they are an accurate record of a discussion. If you allow editing for a long time, then a user has a chance to go back and change his/her mind a long time after the original statement was made.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'LinkList','English','Add/Edit','Link List','Link lists are just what they sound like, a list of links. Many sites have a links section, and this just automates the process.\r\n\r\nTitle\r\nWhat is the title of this link list?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nDescribe the purpose of the links in this list.\r\n\r\nProceed to add link?\r\nLeave this checked if you want to add links to the link list directly after creating it.\r\n\r\nAdding / Editing Links\r\nYou\'ll notice at the bottom of the Edit screen that there are some options to add, edit, delete and reorder the links in your link lists. This process works exactly as the process for doing the same with widgets and pages. The three properties of links are name, url, and description.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (13,'WebGUI','English','Edit','Mail Settings','Recover Password Message\r\nThe message that gets sent to a user when they use the \"recover password\" function.\r\n\r\nSMTP Server\r\nThis is the address of your local mail server. It is needed for all features that use the Internet email system (such as password recovery).\r\n\r\n','6'); +INSERT INTO help VALUES (1,'SyndicatedContent','English','Add/Edit','Syndicated Content','Syndicated content is content that is pulled from another site using the RDF/RSS specification. This technology is often used to pull headlines from various news sites like CNN and Slashdot. It can, of course, be used for other things like sports scores, stock market info, etc.\r\n\r\nYou can find a list of syndicated content at http://my.userland.com. You will need to register with an account to browse their listing of content. Also, the list contained there is by no means a complete list of all the syndicated content on the internet.\r\n\r\nTitle\r\nWhat is the title for this content? This is often the title of the site that the content comes from.\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe the content being pulled so that your users will know what they are seeing.\r\n\r\nURL to RSS file\r\nProvide the exact URL (starting with http://) to the syndicated content\'s RDF or RSS file. The syndicated content will be downloaded from this URL hourly.','1,2,3,4,5'); +INSERT INTO help VALUES (1,'EventsCalendar','English','Add/Edit','Events Calendar','Events calendars are used on many intranets to keep track of internal dates that affect a whole organization. Also events calendars on consumer sites are a great way to let your customers know what events you\'ll be attending and what promotions you\'ll be having.\r\n\r\nTitle\r\nWhat is the title of this events calendar?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this events calendar details.\r\n\r\nProceed to add event?\r\nLeave this checked if you want to add events to the events calendar directly after creating it.\r\n\r\nAdd / Edit Events\r\nOn the edit screen you\'ll notice that there are options to add, edit, and delete the events in your events calendar. The properties for events are name, description, start date, and end date.\r\n\r\nNote: Events that have already happened will not be displayed on the events calendar.\r\n\r\n
\r\nNote: The following style is specific to the Events Calendar.\r\n\r\n.eventTitle \r\nThe title of an individual event.\r\n\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (1,'FAQ','English','Add/Edit','F.A.Q.','It seems that almost every web site, intranet, and extranet in the world has a frequently asked questions area. This widget helps you build one too.\r\n\r\nTitle\r\nWhat is the title for this FAQ section?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe what this FAQ covers.\r\n\r\nProceed to add question?\r\nLeave this checked if you want to add questions to the FAQ directly after creating it.\r\n\r\nAdd / Edit Questions\r\nOn the edit screen you\'ll notice options for adding, editing, deleting, and reordering the questions in your FAQ. The two properties of FAQ questions are question and answer.\r\n\r\n
\r\nNote: The following style is specific to the FAQ widget.\r\n\r\n.faqQuestion\r\nAn F.A.Q. question. To distinguish it from an answer.\r\n\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (11,'WebGUI','English','Edit','File Settings','Path to WebGUI Extras\r\nThe web-path to the directory containing WebGUI images and javascript files.\r\n\r\nMaximum Attachment Size\r\nThe maximum size of files allowed to be uploaded to this site. This applies to all widgets that allow uploaded files and images (like Article and User Contributions). This size is measured in kilobytes.\r\n\r\nWeb Attachment Path\r\nThe web-path of the directory where attachments are to be stored.\r\n\r\nServer Attachment Path\r\nThe local path of the directory where attachments are to be stored. (Perhaps /var/www/public/uploads) Be sure that the web server has the rights to write to that directory.\r\n','6'); +INSERT INTO help VALUES (2,'WebGUI','English','Edit','Authentication Settings','Anonymous Registration\r\nDo you wish visitors to your site to be able to register themselves?\r\n\r\nAuthentication Method (default)\r\nWhat should the default authentication method be for new accounts that are created? The two available options are WebGUI and LDAP. WebGUI authentication means that the users will authenticate against the username and password stored in the WebGUI database. LDAP authentication means that users will authenticate against an external LDAP server.\r\n\r\nNote: Authentication settings can be customized on a per user basis.\r\n\r\nUsername Binding\r\nBind the WebGUI username to the LDAP Identity. This requires the user to have the same username in WebGUI as they specified during the Anonymous Registration process. It also means that they won\'t be able to change their username later. This only in effect if the user is authenticating against LDAP.\r\n\r\nLDAP URL (default)\r\nThe default url to your LDAP server. The LDAP URL takes the form of ldap://[server]:[port]/[base DN]. Example: ldap://ldap.mycompany.com:389/o=MyCompany.\r\n\r\nLDAP Identity\r\nThe LDAP Identity is the unique identifier in the LDAP server that the user will be identified against. Often this field is shortname, which takes the form of first initial + last name. Example: jdoe. Therefore if you specify the LDAP identity to be shortname then Jon Doe would enter jdoe during the registration process.\r\n\r\nLDAP Identity Name\r\nThe label used to describe the LDAP Identity to the user. For instance, some companies use an LDAP server for their proxy server users to authenticate against. In the documentation or training already provided to their users, the LDAP identity is known as their Web Username. So you could enter that label here for consitency.\r\n\r\nLDAP Password Name\r\nJust as the LDAP Identity Name is a label, so is the LDAP Password Name. Use this label as you would LDAP Identity Name.\r\n\r\n','6'); +INSERT INTO help VALUES (1,'UserSubmission','English','Add/Edit','User Submission System','User submission systems are a great way to add a sense of community to any site as well as get free content from your users.\r\n\r\nTitle\r\nWhat is the title for this user submission system?\r\n\r\nDisplay the title?\r\nDo you wish to disply the title?\r\n\r\nProcess macros?\r\nDo you wish to process WebGUI macros? Unchecking this box will not process macros and will speed up page execution.\r\n\r\nDescription\r\nBriefly describe why this user submission system is here and what should be submitted to it.\r\n\r\nWho can approve?\r\nWhat group is allowed to approve and deny content?\r\n\r\nWho can contribute?\r\nWhat group is allowed to contribute content?\r\n\r\nSubmissions Per Page\r\nHow many submissions should be listed per page in the submissions index?\r\n\r\nDefault Status\r\nShould submissions be set to approved, pending, or denied by default?\r\n\r\nNote: If you set the default status to pending, then be prepared to monitor the pending queue under the Admin menu.\r\n','1,2,3,4,5'); +INSERT INTO help VALUES (6,'WebGUI','English','Edit','Company Information','Company Name\r\nThe name of your company. It will appear on all emails and anywhere you use the Company Name macro.\r\n\r\nCompany Email Address\r\nA general email address at your company. This is the address that all automated messages will come from. It can also be used via the WebGUI macro system.\r\n\r\nCompany URL\r\nThe primary URL of your company. This will appear on all automated emails sent from the WebGUI system. It is also available via the WebGUI macro system.\r\n','6'); +INSERT INTO help VALUES (46,'WebGUI','English','Empty','Trash','If you choose to empty your trash, any items contained in it will be lost forever. If you\'re unsure about a few items, it might be best to cut them to your clipboard before you empty the trash.','0'); +INSERT INTO help VALUES (22,'WebGUI','English','Edit','Profile Settings','Profiles are used to extend the information of a particular user. In some cases profiles are important to a site, in others they are not. Use the following switches to turn the various profile sections on and off.\r\n\r\nAllow real name?\r\nDo you want users to enter and display their real names?\r\n\r\nAllow extra contact information?\r\nDo you want users to enter and display their extra contact information such as Instant Messenger IDs, cell phone numbers, and pager numbers?\r\n\r\nAllow home information?\r\nDo you want users to enter and display their home address and phone number?\r\n\r\nAllow business information?\r\nDo you want users to enter and display their work address and phone number?\r\n\r\nAllow miscellaneous information?\r\nDo you want users to enter and display any extra info such as gender, birthdate and home page?','6'); +INSERT INTO incrementer VALUES ('messageLogId',1); +delete from international; +INSERT INTO international VALUES (1,'WebGUI','English','Add content...'); +INSERT INTO international VALUES (2,'WebGUI','English','Page'); +INSERT INTO international VALUES (3,'WebGUI','English','Paste from clipboard...'); +INSERT INTO international VALUES (4,'WebGUI','English','Manage settings.'); +INSERT INTO international VALUES (5,'WebGUI','English','Manage groups.'); +INSERT INTO international VALUES (6,'WebGUI','English','Manage styles.'); +INSERT INTO international VALUES (7,'WebGUI','English','Manage users.'); +INSERT INTO international VALUES (8,'WebGUI','English','View page not found.'); +INSERT INTO international VALUES (9,'WebGUI','English','View clipboard.'); +INSERT INTO international VALUES (10,'WebGUI','English','View trash.'); +INSERT INTO international VALUES (11,'WebGUI','English','Empy trash.'); +INSERT INTO international VALUES (12,'WebGUI','English','Turn admin off.'); +INSERT INTO international VALUES (13,'WebGUI','English','View help index.'); +INSERT INTO international VALUES (14,'WebGUI','English','View pending submissions.'); +INSERT INTO international VALUES (15,'WebGUI','English','January'); +INSERT INTO international VALUES (16,'WebGUI','English','February'); +INSERT INTO international VALUES (17,'WebGUI','English','March'); +INSERT INTO international VALUES (18,'WebGUI','English','April'); +INSERT INTO international VALUES (19,'WebGUI','English','May'); +INSERT INTO international VALUES (20,'WebGUI','English','June'); +INSERT INTO international VALUES (21,'WebGUI','English','July'); +INSERT INTO international VALUES (22,'WebGUI','English','August'); +INSERT INTO international VALUES (23,'WebGUI','English','September'); +INSERT INTO international VALUES (24,'WebGUI','English','October'); +INSERT INTO international VALUES (25,'WebGUI','English','November'); +INSERT INTO international VALUES (26,'WebGUI','English','December'); +INSERT INTO international VALUES (27,'WebGUI','English','Sunday'); +INSERT INTO international VALUES (28,'WebGUI','English','Monday'); +INSERT INTO international VALUES (29,'WebGUI','English','Tuesday'); +INSERT INTO international VALUES (30,'WebGUI','English','Wednesday'); +INSERT INTO international VALUES (31,'WebGUI','English','Thursday'); +INSERT INTO international VALUES (32,'WebGUI','English','Friday'); +INSERT INTO international VALUES (33,'WebGUI','English','Saturday'); +INSERT INTO international VALUES (34,'WebGUI','English','set date'); +INSERT INTO international VALUES (35,'WebGUI','English','Administrative Function'); +INSERT INTO international VALUES (36,'WebGUI','English','You must be an administrator to perform this function. Please contact one of your administrators. The following is a list of the administrators for this system:'); +INSERT INTO international VALUES (37,'WebGUI','English','Permission Denied!'); +INSERT INTO international VALUES (38,'WebGUI','English','You do not have sufficient privileges to perform this operation. Please log in with an account that has sufficient privileges before attempting this operation.'); +INSERT INTO international VALUES (39,'WebGUI','English','You do not have sufficient privileges to access this page.'); +INSERT INTO international VALUES (41,'WebGUI','English','You\'re attempting to remove a vital component of the WebGUI system. If you were allowed to continue WebGUI may cease to function.'); +INSERT INTO international VALUES (40,'WebGUI','English','Vital Component'); +INSERT INTO international VALUES (42,'WebGUI','English','Please Confirm'); +INSERT INTO international VALUES (43,'WebGUI','English','Are you certain that you wish to delete this content?'); +INSERT INTO international VALUES (44,'WebGUI','English','Yes, I\'m sure.'); +INSERT INTO international VALUES (45,'WebGUI','English','No, I made a mistake.'); +INSERT INTO international VALUES (46,'WebGUI','English','My Account'); +INSERT INTO international VALUES (47,'WebGUI','English','Home'); +INSERT INTO international VALUES (48,'WebGUI','English','Hello'); +INSERT INTO international VALUES (49,'WebGUI','English','Click here to log out.'); +INSERT INTO international VALUES (50,'WebGUI','English','Username'); +INSERT INTO international VALUES (51,'WebGUI','English','Password'); +INSERT INTO international VALUES (52,'WebGUI','English','login'); +INSERT INTO international VALUES (53,'WebGUI','English','Make Page Printable'); +INSERT INTO international VALUES (54,'WebGUI','English','Create Account'); +INSERT INTO international VALUES (55,'WebGUI','English','Password (confirm)'); +INSERT INTO international VALUES (56,'WebGUI','English','Email Address'); +INSERT INTO international VALUES (57,'WebGUI','English','This is only necessary if you wish to use features that require Email.'); +INSERT INTO international VALUES (58,'WebGUI','English','I already have an account.'); +INSERT INTO international VALUES (59,'WebGUI','English','I forgot my password.'); +INSERT INTO international VALUES (60,'WebGUI','English','Are you certain you want to deactivate your account. If you proceed your account information will be lost permanently.'); +INSERT INTO international VALUES (61,'WebGUI','English','Update Account Information'); +INSERT INTO international VALUES (62,'WebGUI','English','save'); +INSERT INTO international VALUES (63,'WebGUI','English','Turn admin on.'); +INSERT INTO international VALUES (64,'WebGUI','English','Log out.'); +INSERT INTO international VALUES (65,'WebGUI','English','Please deactivate my account permanently.'); +INSERT INTO international VALUES (66,'WebGUI','English','Log In'); +INSERT INTO international VALUES (67,'WebGUI','English','Create a new account.'); +INSERT INTO international VALUES (68,'WebGUI','English','The account information you supplied is invalid. Either the account does not exist or the username/password combination was incorrect.'); +INSERT INTO international VALUES (69,'WebGUI','English','Please contact your system administrator for assistance.'); +INSERT INTO international VALUES (70,'WebGUI','English','Error'); +INSERT INTO international VALUES (71,'WebGUI','English','Recover password'); +INSERT INTO international VALUES (72,'WebGUI','English','recover'); +INSERT INTO international VALUES (73,'WebGUI','English','Log in.'); +INSERT INTO international VALUES (74,'WebGUI','English','Account Information'); +INSERT INTO international VALUES (75,'WebGUI','English','Your account information has been sent to your email address.'); +INSERT INTO international VALUES (76,'WebGUI','English','That email address is not in our databases.'); +INSERT INTO international VALUES (77,'WebGUI','English','That account name is already in use by another member of this site. Please try a different username. The following are some suggestions:'); +INSERT INTO international VALUES (78,'WebGUI','English','Your passwords did not match. Please try again.'); +INSERT INTO international VALUES (79,'WebGUI','English','Cannot connect to LDAP server.'); +INSERT INTO international VALUES (80,'WebGUI','English','Account created successfully!'); +INSERT INTO international VALUES (81,'WebGUI','English','Account updated successfully!'); +INSERT INTO international VALUES (82,'WebGUI','English','Administrative functions...'); +INSERT INTO international VALUES (83,'WebGUI','English','Add Group'); +INSERT INTO international VALUES (84,'WebGUI','English','Group Name'); +INSERT INTO international VALUES (85,'WebGUI','English','Description'); +INSERT INTO international VALUES (86,'WebGUI','English','Are you certain you wish to delete this group? Beware that deleting a group is permanent and will remove all privileges associated with this group.'); +INSERT INTO international VALUES (87,'WebGUI','English','Edit Group'); +INSERT INTO international VALUES (88,'WebGUI','English','Users In Group'); +INSERT INTO international VALUES (89,'WebGUI','English','Groups'); +INSERT INTO international VALUES (90,'WebGUI','English','Add new group.'); +INSERT INTO international VALUES (91,'WebGUI','English','Previous Page'); +INSERT INTO international VALUES (92,'WebGUI','English','Next Page'); +INSERT INTO international VALUES (93,'WebGUI','English','Help'); +INSERT INTO international VALUES (94,'WebGUI','English','See also'); +INSERT INTO international VALUES (95,'WebGUI','English','Help Index'); +INSERT INTO international VALUES (96,'WebGUI','English','Sorted By Action'); +INSERT INTO international VALUES (97,'WebGUI','English','Sorted by Object'); +INSERT INTO international VALUES (98,'WebGUI','English','Add Page'); +INSERT INTO international VALUES (99,'WebGUI','English','Title'); +INSERT INTO international VALUES (100,'WebGUI','English','Meta Tags'); +INSERT INTO international VALUES (101,'WebGUI','English','Are you certain that you wish to delete this page, its content, and all items under it?'); +INSERT INTO international VALUES (102,'WebGUI','English','Edit Page'); +INSERT INTO international VALUES (103,'WebGUI','English','Page Specifics'); +INSERT INTO international VALUES (104,'WebGUI','English','Page URL'); +INSERT INTO international VALUES (105,'WebGUI','English','Style'); +INSERT INTO international VALUES (106,'WebGUI','English','Check to give this style to all sub-pages.'); +INSERT INTO international VALUES (107,'WebGUI','English','Privileges'); +INSERT INTO international VALUES (108,'WebGUI','English','Owner'); +INSERT INTO international VALUES (109,'WebGUI','English','Owner can view?'); +INSERT INTO international VALUES (110,'WebGUI','English','Owner can edit?'); +INSERT INTO international VALUES (111,'WebGUI','English','Group'); +INSERT INTO international VALUES (112,'WebGUI','English','Group can view?'); +INSERT INTO international VALUES (113,'WebGUI','English','Group can edit?'); +INSERT INTO international VALUES (114,'WebGUI','English','Anybody can view?'); +INSERT INTO international VALUES (115,'WebGUI','English','Anybody can edit?'); +INSERT INTO international VALUES (116,'WebGUI','English','Check to give these privileges to all sub-pages.'); +INSERT INTO international VALUES (117,'WebGUI','English','Edit Authentication Settings'); +INSERT INTO international VALUES (118,'WebGUI','English','Anonymous Registration'); +INSERT INTO international VALUES (119,'WebGUI','English','Authentication Method (default)'); +INSERT INTO international VALUES (120,'WebGUI','English','LDAP URL (default)'); +INSERT INTO international VALUES (121,'WebGUI','English','LDAP Identity (default)'); +INSERT INTO international VALUES (122,'WebGUI','English','LDAP Identity Name'); +INSERT INTO international VALUES (123,'WebGUI','English','LDAP Password Name'); +INSERT INTO international VALUES (124,'WebGUI','English','Edit Company Information'); +INSERT INTO international VALUES (125,'WebGUI','English','Company Name'); +INSERT INTO international VALUES (126,'WebGUI','English','Company Email Address'); +INSERT INTO international VALUES (127,'WebGUI','English','Company URL'); +INSERT INTO international VALUES (128,'WebGUI','English','Edit File Settings'); +INSERT INTO international VALUES (129,'WebGUI','English','Path to WebGUI Extras'); +INSERT INTO international VALUES (130,'WebGUI','English','Maximum Attachment Size'); +INSERT INTO international VALUES (131,'WebGUI','English','Web Attachment Path'); +INSERT INTO international VALUES (132,'WebGUI','English','Server Attachment Path'); +INSERT INTO international VALUES (133,'WebGUI','English','Edit Mail Settings'); +INSERT INTO international VALUES (134,'WebGUI','English','Recover Password Message'); +INSERT INTO international VALUES (135,'WebGUI','English','SMTP Server'); +INSERT INTO international VALUES (136,'WebGUI','English','Home Page'); +INSERT INTO international VALUES (137,'WebGUI','English','Page Not Found Page'); +INSERT INTO international VALUES (138,'WebGUI','English','Yes'); +INSERT INTO international VALUES (139,'WebGUI','English','No'); +INSERT INTO international VALUES (140,'WebGUI','English','Edit Miscellaneous Settings'); +INSERT INTO international VALUES (141,'WebGUI','English','Not Found Page'); +INSERT INTO international VALUES (142,'WebGUI','English','Session Timeout'); +INSERT INTO international VALUES (143,'WebGUI','English','Manage Settings'); +INSERT INTO international VALUES (144,'WebGUI','English','View statistics.'); +INSERT INTO international VALUES (145,'WebGUI','English','WebGUI Build Version'); +INSERT INTO international VALUES (146,'WebGUI','English','Active Sessions'); +INSERT INTO international VALUES (147,'WebGUI','English','Viewable Pages'); +INSERT INTO international VALUES (148,'WebGUI','English','Viewable Widgets'); +INSERT INTO international VALUES (149,'WebGUI','English','Users'); +INSERT INTO international VALUES (150,'WebGUI','English','Add Style'); +INSERT INTO international VALUES (151,'WebGUI','English','Style Name'); +INSERT INTO international VALUES (152,'WebGUI','English','Header'); +INSERT INTO international VALUES (153,'WebGUI','English','Footer'); +INSERT INTO international VALUES (154,'WebGUI','English','Style Sheet'); +INSERT INTO international VALUES (155,'WebGUI','English','Are you certain you wish to delete this style and migrate all pages using this style to the \"Fail Safe\" style?'); +INSERT INTO international VALUES (156,'WebGUI','English','Edit Style'); +INSERT INTO international VALUES (157,'WebGUI','English','Styles'); +INSERT INTO international VALUES (158,'WebGUI','English','Add a new style.'); +INSERT INTO international VALUES (159,'WebGUI','English','Message Log'); +INSERT INTO international VALUES (160,'WebGUI','English','Date Submitted'); +INSERT INTO international VALUES (161,'WebGUI','English','Submitted By'); +INSERT INTO international VALUES (162,'WebGUI','English','Are you certain that you wish to purge all the pages and widgets in the trash?'); +INSERT INTO international VALUES (163,'WebGUI','English','Add User'); +INSERT INTO international VALUES (164,'WebGUI','English','Authentication Method'); +INSERT INTO international VALUES (165,'WebGUI','English','LDAP URL'); +INSERT INTO international VALUES (166,'WebGUI','English','Connect DN'); +INSERT INTO international VALUES (167,'WebGUI','English','Are you certain you want to delete this user? Be warned that all this user\'s information will be lost permanently if you choose to proceed.'); +INSERT INTO international VALUES (168,'WebGUI','English','Edit User'); +INSERT INTO international VALUES (169,'WebGUI','English','Add a new user.'); +INSERT INTO international VALUES (170,'WebGUI','English','search'); +INSERT INTO international VALUES (171,'WebGUI','English','rich edit'); +INSERT INTO international VALUES (172,'WebGUI','English','Article'); +INSERT INTO international VALUES (173,'WebGUI','English','Add Article'); +INSERT INTO international VALUES (174,'WebGUI','English','Display the title?'); +INSERT INTO international VALUES (175,'WebGUI','English','Process macros?'); +INSERT INTO international VALUES (176,'WebGUI','English','Start Date'); +INSERT INTO international VALUES (177,'WebGUI','English','End Date'); +INSERT INTO international VALUES (178,'WebGUI','English','Body'); +INSERT INTO international VALUES (179,'WebGUI','English','Image'); +INSERT INTO international VALUES (180,'WebGUI','English','Link Title'); +INSERT INTO international VALUES (181,'WebGUI','English','Link URL'); +INSERT INTO international VALUES (182,'WebGUI','English','Attachment'); +INSERT INTO international VALUES (183,'WebGUI','English','Convert carriage returns?'); +INSERT INTO international VALUES (184,'WebGUI','English','(Check if you aren\'t adding <br> manually.)'); +INSERT INTO international VALUES (185,'WebGUI','English','Edit Article'); +INSERT INTO international VALUES (186,'WebGUI','English','Delete'); +INSERT INTO international VALUES (187,'WebGUI','English','Events Calendar'); +INSERT INTO international VALUES (188,'WebGUI','English','Add Events Calendar'); +INSERT INTO international VALUES (189,'WebGUI','English','Happens only once.'); +INSERT INTO international VALUES (190,'WebGUI','English','Day'); +INSERT INTO international VALUES (191,'WebGUI','English','Week'); +INSERT INTO international VALUES (192,'WebGUI','English','Add Event'); +INSERT INTO international VALUES (193,'WebGUI','English','Recurs every'); +INSERT INTO international VALUES (194,'WebGUI','English','until'); +INSERT INTO international VALUES (195,'WebGUI','English','Are you certain that you want to delete this event'); +INSERT INTO international VALUES (197,'WebGUI','English','Edit Events Calendar'); +INSERT INTO international VALUES (196,'WebGUI','English','and all of its recurring events'); +INSERT INTO international VALUES (198,'WebGUI','English','Edit Event'); +INSERT INTO international VALUES (199,'WebGUI','English','Extra Column'); +INSERT INTO international VALUES (200,'WebGUI','English','Add Extra Column'); +INSERT INTO international VALUES (201,'WebGUI','English','Spacer'); +INSERT INTO international VALUES (202,'WebGUI','English','Width'); +INSERT INTO international VALUES (203,'WebGUI','English','StyleSheet Class'); +INSERT INTO international VALUES (204,'WebGUI','English','Edit Extra Column'); +INSERT INTO international VALUES (205,'WebGUI','English','F.A.Q.'); +INSERT INTO international VALUES (206,'WebGUI','English','Add F.A.Q.'); +INSERT INTO international VALUES (207,'WebGUI','English','Add Question'); +INSERT INTO international VALUES (208,'WebGUI','English','Question'); +INSERT INTO international VALUES (209,'WebGUI','English','Answer'); +INSERT INTO international VALUES (211,'WebGUI','English','Edit F.A.Q.'); +INSERT INTO international VALUES (210,'WebGUI','English','Are you certain that you want to delete this question?'); +INSERT INTO international VALUES (212,'WebGUI','English','Add a new question.'); +INSERT INTO international VALUES (213,'WebGUI','English','Edit Question'); +INSERT INTO international VALUES (214,'WebGUI','English','Link List'); +INSERT INTO international VALUES (215,'WebGUI','English','Add Link'); +INSERT INTO international VALUES (216,'WebGUI','English','URL'); +INSERT INTO international VALUES (217,'WebGUI','English','Are you certain that you want to delete this link?'); +INSERT INTO international VALUES (218,'WebGUI','English','Edit Link List'); +INSERT INTO international VALUES (219,'WebGUI','English','Add Link List'); +INSERT INTO international VALUES (220,'WebGUI','English','Edit Link'); +INSERT INTO international VALUES (221,'WebGUI','English','Add a new link.'); +INSERT INTO international VALUES (222,'WebGUI','English','Add Message Board'); +INSERT INTO international VALUES (223,'WebGUI','English','Message Board'); +INSERT INTO international VALUES (224,'WebGUI','English','Who can post?'); +INSERT INTO international VALUES (225,'WebGUI','English','Messages Per Page'); +INSERT INTO international VALUES (226,'WebGUI','English','Edit Timeout'); +INSERT INTO international VALUES (227,'WebGUI','English','Edit Message Board'); +INSERT INTO international VALUES (228,'WebGUI','English','Editing Message...'); +INSERT INTO international VALUES (229,'WebGUI','English','Subject'); +INSERT INTO international VALUES (230,'WebGUI','English','Message'); +INSERT INTO international VALUES (231,'WebGUI','English','Posting New Message...'); +INSERT INTO international VALUES (232,'WebGUI','English','no subject'); +INSERT INTO international VALUES (233,'WebGUI','English','(eom)'); +INSERT INTO international VALUES (234,'WebGUI','English','Posting Reply...'); +INSERT INTO international VALUES (235,'WebGUI','English','Edit Message'); +INSERT INTO international VALUES (236,'WebGUI','English','Post Reply'); +INSERT INTO international VALUES (237,'WebGUI','English','Subject:'); +INSERT INTO international VALUES (238,'WebGUI','English','Author:'); +INSERT INTO international VALUES (239,'WebGUI','English','Date:'); +INSERT INTO international VALUES (240,'WebGUI','English','Message ID:'); +INSERT INTO international VALUES (241,'WebGUI','English','Previous Thread'); +INSERT INTO international VALUES (242,'WebGUI','English','Back To Message List'); +INSERT INTO international VALUES (243,'WebGUI','English','Next Thread'); +INSERT INTO international VALUES (244,'WebGUI','English','Author'); +INSERT INTO international VALUES (245,'WebGUI','English','Date'); +INSERT INTO international VALUES (246,'WebGUI','English','Post New Message'); +INSERT INTO international VALUES (247,'WebGUI','English','Thread Started'); +INSERT INTO international VALUES (248,'WebGUI','English','Replies'); +INSERT INTO international VALUES (249,'WebGUI','English','Last Reply'); +INSERT INTO international VALUES (250,'WebGUI','English','Poll'); +INSERT INTO international VALUES (251,'WebGUI','English','Add Poll'); +INSERT INTO international VALUES (252,'WebGUI','English','Active'); +INSERT INTO international VALUES (253,'WebGUI','English','Who can vote?'); +INSERT INTO international VALUES (254,'WebGUI','English','Graph Width'); +INSERT INTO international VALUES (255,'WebGUI','English','Question'); +INSERT INTO international VALUES (256,'WebGUI','English','Answers'); +INSERT INTO international VALUES (257,'WebGUI','English','(Enter one answer per line. No more than 20.)'); +INSERT INTO international VALUES (258,'WebGUI','English','Edit Poll'); +INSERT INTO international VALUES (259,'WebGUI','English','SQL Report'); +INSERT INTO international VALUES (260,'WebGUI','English','Add SQL Report'); +INSERT INTO international VALUES (261,'WebGUI','English','Template'); +INSERT INTO international VALUES (262,'WebGUI','English','Query'); +INSERT INTO international VALUES (263,'WebGUI','English','DSN'); +INSERT INTO international VALUES (264,'WebGUI','English','Database User'); +INSERT INTO international VALUES (265,'WebGUI','English','Database Password'); +INSERT INTO international VALUES (266,'WebGUI','English','Edit SQL Report'); +INSERT INTO international VALUES (267,'WebGUI','English','Error: The DSN specified is of an improper format.'); +INSERT INTO international VALUES (268,'WebGUI','English','Error: The SQL specified is of an improper format.'); +INSERT INTO international VALUES (269,'WebGUI','English','Error: There was a problem with the query.'); +INSERT INTO international VALUES (270,'WebGUI','English','Error: Could not connect to the database.'); +INSERT INTO international VALUES (271,'WebGUI','English','Syndicated Content'); +INSERT INTO international VALUES (272,'WebGUI','English','Add Syndicated Content'); +INSERT INTO international VALUES (273,'WebGUI','English','URL to RSS File'); +INSERT INTO international VALUES (274,'WebGUI','English','Edit Syndicated Content'); +INSERT INTO international VALUES (275,'WebGUI','English','Last Fetched'); +INSERT INTO international VALUES (276,'WebGUI','English','Current Content'); +INSERT INTO international VALUES (277,'WebGUI','English','User Submission System'); +INSERT INTO international VALUES (278,'WebGUI','English','Add User Submission System'); +INSERT INTO international VALUES (2,'UserSubmission','English','Who can contribute?'); +INSERT INTO international VALUES (280,'WebGUI','English','Submissions Per Page'); +INSERT INTO international VALUES (281,'WebGUI','English','Approved'); +INSERT INTO international VALUES (282,'WebGUI','English','Denied'); +INSERT INTO international VALUES (283,'WebGUI','English','Pending'); +INSERT INTO international VALUES (284,'WebGUI','English','Default Status'); +INSERT INTO international VALUES (285,'WebGUI','English','Add Submission'); +INSERT INTO international VALUES (286,'WebGUI','English','(Uncheck if you\'re writing an HTML submission.)'); +INSERT INTO international VALUES (287,'WebGUI','English','Date Submitted'); +INSERT INTO international VALUES (288,'WebGUI','English','Status'); +INSERT INTO international VALUES (289,'WebGUI','English','Edit/Delete'); +INSERT INTO international VALUES (290,'WebGUI','English','Untitiled'); +INSERT INTO international VALUES (291,'WebGUI','English','Are you certain you wish to delete this submission?'); +INSERT INTO international VALUES (292,'WebGUI','English','Edit User Submission System'); +INSERT INTO international VALUES (293,'WebGUI','English','Edit Submission'); +INSERT INTO international VALUES (294,'WebGUI','English','Post New Submission'); +INSERT INTO international VALUES (295,'WebGUI','English','Date Submitted'); +INSERT INTO international VALUES (296,'WebGUI','English','Submitted By'); +INSERT INTO international VALUES (297,'WebGUI','English','Submitted By:'); +INSERT INTO international VALUES (298,'WebGUI','English','Date Submitted:'); +INSERT INTO international VALUES (299,'WebGUI','English','Approve'); +INSERT INTO international VALUES (300,'WebGUI','English','Leave Pending'); +INSERT INTO international VALUES (301,'WebGUI','English','Deny'); +INSERT INTO international VALUES (302,'WebGUI','English','Edit'); +INSERT INTO international VALUES (303,'WebGUI','English','Return To Submissions List'); +INSERT INTO international VALUES (304,'WebGUI','English','Language'); +INSERT INTO international VALUES (305,'WebGUI','English','Reset votes.'); +INSERT INTO international VALUES (284,'WebGUI','Deutsch','Standardstatus'); +INSERT INTO international VALUES (283,'WebGUI','Deutsch','Ausstehend'); +INSERT INTO international VALUES (282,'WebGUI','Deutsch','Verboten'); +INSERT INTO international VALUES (281,'WebGUI','Deutsch','Erlaubt'); +INSERT INTO international VALUES (280,'WebGUI','Deutsch','Beiträge pro Seite'); +INSERT INTO international VALUES (2,'UserSubmission','Deutsch','Wer kann Beiträge schreiben?'); +INSERT INTO international VALUES (277,'WebGUI','Deutsch','Benutzer Beitragssystem'); +INSERT INTO international VALUES (278,'WebGUI','Deutsch','Benutzer Beitragssystem hinzufügen'); +INSERT INTO international VALUES (276,'WebGUI','Deutsch','Aktueller Inhalt'); +INSERT INTO international VALUES (275,'WebGUI','Deutsch','zuletzt geholt'); +INSERT INTO international VALUES (274,'WebGUI','Deutsch','Clipping-Dienst bearbeiten'); +INSERT INTO international VALUES (273,'WebGUI','Deutsch','URL zur RSS-Datei'); +INSERT INTO international VALUES (272,'WebGUI','Deutsch','Clipping-Dienst hinzufügen'); +INSERT INTO international VALUES (271,'WebGUI','Deutsch','Clipping-Dienst'); +INSERT INTO international VALUES (270,'WebGUI','Deutsch','Fehler: Datenbankverbindung konnte nicht aufgebaut werden.'); +INSERT INTO international VALUES (269,'WebGUI','Deutsch','Fehler: Es gab ein Problem mit der Abfrage.'); +INSERT INTO international VALUES (267,'WebGUI','Deutsch','Fehler: Die DSN besitzt das falsche Format.'); +INSERT INTO international VALUES (268,'WebGUI','Deutsch','Fehler: Das SQL-Statement ist im falschen Format.'); +INSERT INTO international VALUES (266,'WebGUI','Deutsch','SQL Bericht bearbeiten'); +INSERT INTO international VALUES (265,'WebGUI','Deutsch','Datenbankpasswort'); +INSERT INTO international VALUES (264,'WebGUI','Deutsch','Datenbankbenutzer'); +INSERT INTO international VALUES (263,'WebGUI','Deutsch','DSN (Data Source Name)'); +INSERT INTO international VALUES (262,'WebGUI','Deutsch','Abfrage'); +INSERT INTO international VALUES (261,'WebGUI','Deutsch','Schablone'); +INSERT INTO international VALUES (260,'WebGUI','Deutsch','SQL Bericht hinzufügen'); +INSERT INTO international VALUES (259,'WebGUI','Deutsch','SQL Bericht'); +INSERT INTO international VALUES (258,'WebGUI','Deutsch','Abstimmung bearbeiten'); +INSERT INTO international VALUES (257,'WebGUI','Deutsch','(Eine Antwort pro Zeile. Bitte nicht mehr als 20 verschiedene Antworten)'); +INSERT INTO international VALUES (253,'WebGUI','Deutsch','Wer kann abstimmen?'); +INSERT INTO international VALUES (256,'WebGUI','Deutsch','Antworten'); +INSERT INTO international VALUES (255,'WebGUI','Deutsch','Frage'); +INSERT INTO international VALUES (254,'WebGUI','Deutsch','Breite der Grafik'); +INSERT INTO international VALUES (248,'WebGUI','Deutsch','Antworten'); +INSERT INTO international VALUES (249,'WebGUI','Deutsch','Letzte Antwort'); +INSERT INTO international VALUES (250,'WebGUI','Deutsch','Abstimmung'); +INSERT INTO international VALUES (251,'WebGUI','Deutsch','Abstimmung hinzufügen'); +INSERT INTO international VALUES (252,'WebGUI','Deutsch','Aktiv'); +INSERT INTO international VALUES (247,'WebGUI','Deutsch','Diskussion begonnen'); +INSERT INTO international VALUES (245,'WebGUI','Deutsch','Datum'); +INSERT INTO international VALUES (246,'WebGUI','Deutsch','Neuen Beitrag schreiben'); +INSERT INTO international VALUES (244,'WebGUI','Deutsch','Autor'); +INSERT INTO international VALUES (241,'WebGUI','Deutsch','Vorherige Diskussion'); +INSERT INTO international VALUES (242,'WebGUI','Deutsch','Zurück zur Beitragsliste'); +INSERT INTO international VALUES (243,'WebGUI','Deutsch','Nächste Diskussion'); +INSERT INTO international VALUES (240,'WebGUI','Deutsch','Beitrags ID:'); +INSERT INTO international VALUES (238,'WebGUI','Deutsch','Autor:'); +INSERT INTO international VALUES (239,'WebGUI','Deutsch','Datum:'); +INSERT INTO international VALUES (237,'WebGUI','Deutsch','Betreff:'); +INSERT INTO international VALUES (236,'WebGUI','Deutsch','Antwort schicken'); +INSERT INTO international VALUES (230,'WebGUI','Deutsch','Beitrag'); +INSERT INTO international VALUES (231,'WebGUI','Deutsch','Neuen Beitrag schreiben...'); +INSERT INTO international VALUES (232,'WebGUI','Deutsch','kein Betreff'); +INSERT INTO international VALUES (233,'WebGUI','Deutsch','(eom)'); +INSERT INTO international VALUES (234,'WebGUI','Deutsch','Antworten...'); +INSERT INTO international VALUES (235,'WebGUI','Deutsch','Beitrag bearbeiten'); +INSERT INTO international VALUES (229,'WebGUI','Deutsch','Betreff'); +INSERT INTO international VALUES (228,'WebGUI','Deutsch','Beiträge bearbeiten ...'); +INSERT INTO international VALUES (227,'WebGUI','Deutsch','Diskussionsforum bearbeiten'); +INSERT INTO international VALUES (225,'WebGUI','Deutsch','Beiträge pro Seite'); +INSERT INTO international VALUES (226,'WebGUI','Deutsch','Timeout zum bearbeiten'); +INSERT INTO international VALUES (223,'WebGUI','Deutsch','Diskussionsforum'); +INSERT INTO international VALUES (224,'WebGUI','Deutsch','Wer kann Beiträge schreiben?'); +INSERT INTO international VALUES (222,'WebGUI','Deutsch','Diskussionsforum hinzufügen'); +INSERT INTO international VALUES (221,'WebGUI','Deutsch','Neuen Link hinzufügen'); +INSERT INTO international VALUES (220,'WebGUI','Deutsch','Link bearbeiten'); +INSERT INTO international VALUES (219,'WebGUI','Deutsch','Link Liste hinzufügen'); +INSERT INTO international VALUES (218,'WebGUI','Deutsch','Link Liste bearbeiten'); +INSERT INTO international VALUES (217,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diesen Link löschen wollen?'); +INSERT INTO international VALUES (215,'WebGUI','Deutsch','Link hinzufügen'); +INSERT INTO international VALUES (216,'WebGUI','Deutsch','URL'); +INSERT INTO international VALUES (213,'WebGUI','Deutsch','Frage bearbeiten'); +INSERT INTO international VALUES (214,'WebGUI','Deutsch','Link Liste'); +INSERT INTO international VALUES (212,'WebGUI','Deutsch','Neue Frage hinzufügen'); +INSERT INTO international VALUES (211,'WebGUI','Deutsch','F.A.Q. bearbeiten'); +INSERT INTO international VALUES (209,'WebGUI','Deutsch','Antwort'); +INSERT INTO international VALUES (210,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diese Frage löschen wollen?'); +INSERT INTO international VALUES (208,'WebGUI','Deutsch','Frage'); +INSERT INTO international VALUES (204,'WebGUI','Deutsch','Extra Spalte bearbeiten'); +INSERT INTO international VALUES (205,'WebGUI','Deutsch','F.A.Q.'); +INSERT INTO international VALUES (206,'WebGUI','Deutsch','F.A.Q. hinzufügen'); +INSERT INTO international VALUES (207,'WebGUI','Deutsch','Frage hinzufügen'); +INSERT INTO international VALUES (2,'WebGUI','Deutsch','Seite'); +INSERT INTO international VALUES (1,'WebGUI','Deutsch','Inhalt hinzufügen...'); +INSERT INTO international VALUES (3,'WebGUI','Deutsch','Aus Zwischenablage einfügen...'); +INSERT INTO international VALUES (4,'WebGUI','Deutsch','Einstellungen verwalten'); +INSERT INTO international VALUES (5,'WebGUI','Deutsch','Gruppen verwalten'); +INSERT INTO international VALUES (7,'WebGUI','Deutsch','Benutzer verwalten'); +INSERT INTO international VALUES (6,'WebGUI','Deutsch','Stile verwalten'); +INSERT INTO international VALUES (8,'WebGUI','Deutsch','\"Seite nicht gefunden\" anschauen'); +INSERT INTO international VALUES (11,'WebGUI','Deutsch','Mülleimer leeren'); +INSERT INTO international VALUES (10,'WebGUI','Deutsch','Mülleimer anschauen'); +INSERT INTO international VALUES (9,'WebGUI','Deutsch','Zwischenablage anschauen'); +INSERT INTO international VALUES (13,'WebGUI','Deutsch','Hilfe anschauen'); +INSERT INTO international VALUES (12,'WebGUI','Deutsch','Administrationsmodus abschalten'); +INSERT INTO international VALUES (14,'WebGUI','Deutsch','Ausstehende Beiträge anschauen'); +INSERT INTO international VALUES (15,'WebGUI','Deutsch','Januar'); +INSERT INTO international VALUES (16,'WebGUI','Deutsch','Februar'); +INSERT INTO international VALUES (18,'WebGUI','Deutsch','April'); +INSERT INTO international VALUES (17,'WebGUI','Deutsch','März'); +INSERT INTO international VALUES (19,'WebGUI','Deutsch','Mai'); +INSERT INTO international VALUES (20,'WebGUI','Deutsch','Juni'); +INSERT INTO international VALUES (22,'WebGUI','Deutsch','August'); +INSERT INTO international VALUES (21,'WebGUI','Deutsch','Juli'); +INSERT INTO international VALUES (24,'WebGUI','Deutsch','Oktober'); +INSERT INTO international VALUES (23,'WebGUI','Deutsch','September'); +INSERT INTO international VALUES (25,'WebGUI','Deutsch','November'); +INSERT INTO international VALUES (26,'WebGUI','Deutsch','Dezember'); +INSERT INTO international VALUES (27,'WebGUI','Deutsch','Sonntag'); +INSERT INTO international VALUES (28,'WebGUI','Deutsch','Montag'); +INSERT INTO international VALUES (29,'WebGUI','Deutsch','Dienstag'); +INSERT INTO international VALUES (30,'WebGUI','Deutsch','Mittwoch'); +INSERT INTO international VALUES (31,'WebGUI','Deutsch','Donnerstag'); +INSERT INTO international VALUES (33,'WebGUI','Deutsch','Samstag'); +INSERT INTO international VALUES (32,'WebGUI','Deutsch','Freitag'); +INSERT INTO international VALUES (35,'WebGUI','Deutsch','Administrative Funktion'); +INSERT INTO international VALUES (34,'WebGUI','Deutsch','Datum setzen'); +INSERT INTO international VALUES (36,'WebGUI','Deutsch','Um diese Funktion ausführen zu können, müssen Sie Administrator sein. Eine der folgenden Personen kann Sie zum Administrator machen:'); +INSERT INTO international VALUES (37,'WebGUI','Deutsch','Zugriff verweigert!'); +INSERT INTO international VALUES (38,'WebGUI','Deutsch','Sie sind nicht berechtigt, diese Aktion auszuführen. Melden Sie sich bitte mit einem Benutzernamen an, der über ausreichende Rechte verfügt.'); +INSERT INTO international VALUES (39,'WebGUI','Deutsch','Sie sind nicht berechtigt, diese Seite anzuschauen.'); +INSERT INTO international VALUES (40,'WebGUI','Deutsch','Notwendiger Bestandteil'); +INSERT INTO international VALUES (43,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diesen Inhalt löschen möchten?'); +INSERT INTO international VALUES (42,'WebGUI','Deutsch','Bitte bestätigen Sie'); +INSERT INTO international VALUES (41,'WebGUI','Deutsch','Sie versuchen einen notwendigen Bestandteil des Systems zu löschen. WebGUI wird nach dieser Aktion möglicherweise nicht mehr richtig funktionieren.'); +INSERT INTO international VALUES (44,'WebGUI','Deutsch','Ja, ich bin mir sicher.'); +INSERT INTO international VALUES (47,'WebGUI','Deutsch','Startseite'); +INSERT INTO international VALUES (46,'WebGUI','Deutsch','Mein Benutzerkonto'); +INSERT INTO international VALUES (45,'WebGUI','Deutsch','Nein, ich habe einen Fehler gemacht.'); +INSERT INTO international VALUES (48,'WebGUI','Deutsch','Hallo'); +INSERT INTO international VALUES (50,'WebGUI','Deutsch','Benutzername'); +INSERT INTO international VALUES (49,'WebGUI','Deutsch','Hier können Sie sich abmelden.'); +INSERT INTO international VALUES (52,'WebGUI','Deutsch','Anmelden'); +INSERT INTO international VALUES (51,'WebGUI','Deutsch','Passwort'); +INSERT INTO international VALUES (54,'WebGUI','Deutsch','Benutzerkonto anlegen'); +INSERT INTO international VALUES (53,'WebGUI','Deutsch','Druckerbares Format'); +INSERT INTO international VALUES (56,'WebGUI','Deutsch','Email Adresse'); +INSERT INTO international VALUES (55,'WebGUI','Deutsch','Passwort (bestätigen)'); +INSERT INTO international VALUES (58,'WebGUI','Deutsch','Ich besitze bereits ein Benutzerkonto.'); +INSERT INTO international VALUES (57,'WebGUI','Deutsch','(Dies ist nur notwendig, wenn Sie Eigenschaften benutzen möchten die eine Emailadresse voraussetzen)'); +INSERT INTO international VALUES (59,'WebGUI','Deutsch','Ich habe mein Passwort vergessen'); +INSERT INTO international VALUES (60,'WebGUI','Deutsch','Sind Sie sicher, dass Sie dieses Benutzerkonto deaktivieren möchten? Wenn Sie fortfahren sind Ihre Konteninformationen endgültig verloren.'); +INSERT INTO international VALUES (65,'WebGUI','Deutsch','Benutzerkonto endgültig deaktivieren'); +INSERT INTO international VALUES (64,'WebGUI','Deutsch','Abmelden'); +INSERT INTO international VALUES (62,'WebGUI','Deutsch','sichern'); +INSERT INTO international VALUES (63,'WebGUI','Deutsch','Administrationsmodus einschalten'); +INSERT INTO international VALUES (61,'WebGUI','Deutsch','Benutzerkontendetails aktualisieren'); +INSERT INTO international VALUES (66,'WebGUI','Deutsch','Anmelden'); +INSERT INTO international VALUES (67,'WebGUI','Deutsch','Neues Benutzerkonto einrichten'); +INSERT INTO international VALUES (68,'WebGUI','Deutsch','Die Benutzerkontoinformationen die Sie eingegeben haben, sind ungültig. Entweder existiert das Konto nicht, oder die Kombination aus Benutzername und Passwort ist falsch.'); +INSERT INTO international VALUES (70,'WebGUI','Deutsch','Fehler'); +INSERT INTO international VALUES (69,'WebGUI','Deutsch','Bitten Sie Ihren Systemadministrator um Hilfe.'); +INSERT INTO international VALUES (74,'WebGUI','Deutsch','Benutzerkonteninformation'); +INSERT INTO international VALUES (73,'WebGUI','Deutsch','Anmelden'); +INSERT INTO international VALUES (72,'WebGUI','Deutsch','wiederherstellen'); +INSERT INTO international VALUES (71,'WebGUI','Deutsch','Passwort wiederherstellen'); +INSERT INTO international VALUES (75,'WebGUI','Deutsch','Ihre Benutzerkonteninformation wurde an Ihre Emailadresse geschickt'); +INSERT INTO international VALUES (76,'WebGUI','Deutsch','Ihre Emailadresse ist nicht in unserer Datenbank.'); +INSERT INTO international VALUES (77,'WebGUI','Deutsch','Ein anderes Mitglied dieser Seiten benutzt bereits diesen Namen. Bitte wählen Sie einen anderen Benutzernamen. Hier sind einige Vorschläge:'); +INSERT INTO international VALUES (78,'WebGUI','Deutsch','Die Passworte unterscheiden sich. Bitte versuchen Sie es noch einmal.'); +INSERT INTO international VALUES (79,'WebGUI','Deutsch','Verbindung zum LDAP-Server konnte nicht hergestellt werden.'); +INSERT INTO international VALUES (80,'WebGUI','Deutsch','Benutzerkonto wurde angelegt'); +INSERT INTO international VALUES (83,'WebGUI','Deutsch','Gruppe hinzufügen'); +INSERT INTO international VALUES (81,'WebGUI','Deutsch','Benutzerkonto wurde aktualisiert'); +INSERT INTO international VALUES (82,'WebGUI','Deutsch','Administrative Funktionen ...'); +INSERT INTO international VALUES (84,'WebGUI','Deutsch','Gruppenname'); +INSERT INTO international VALUES (85,'WebGUI','Deutsch','Beschreibung'); +INSERT INTO international VALUES (87,'WebGUI','Deutsch','Gruppe bearbeiten'); +INSERT INTO international VALUES (86,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diese Gruppe löschen möchten? Denken Sie daran, dass diese Gruppe und die zugehörige Rechtesstruktur endgültig gelöscht wird.'); +INSERT INTO international VALUES (88,'WebGUI','Deutsch','Benutzer in dieser Gruppe'); +INSERT INTO international VALUES (93,'WebGUI','Deutsch','Hilfe'); +INSERT INTO international VALUES (92,'WebGUI','Deutsch','Nächste Seite'); +INSERT INTO international VALUES (91,'WebGUI','Deutsch','Vorherige Seite'); +INSERT INTO international VALUES (90,'WebGUI','Deutsch','Neue Gruppe hinzufügen'); +INSERT INTO international VALUES (89,'WebGUI','Deutsch','Gruppen'); +INSERT INTO international VALUES (94,'WebGUI','Deutsch','Siehe auch'); +INSERT INTO international VALUES (96,'WebGUI','Deutsch','Sortiert nach Aktion'); +INSERT INTO international VALUES (95,'WebGUI','Deutsch','Hilfe'); +INSERT INTO international VALUES (100,'WebGUI','Deutsch','Meta Tags'); +INSERT INTO international VALUES (99,'WebGUI','Deutsch','Titel'); +INSERT INTO international VALUES (98,'WebGUI','Deutsch','Seite hinzufügen'); +INSERT INTO international VALUES (97,'WebGUI','Deutsch','Sortiert nach Objekt'); +INSERT INTO international VALUES (105,'WebGUI','Deutsch','Stil'); +INSERT INTO international VALUES (104,'WebGUI','Deutsch','URL der Seite'); +INSERT INTO international VALUES (103,'WebGUI','Deutsch','Seitenspezifikation'); +INSERT INTO international VALUES (102,'WebGUI','Deutsch','Seite bearbeiten'); +INSERT INTO international VALUES (101,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diese Seite und ihren kompletten Inhalt darunter löschen möchten?'); +INSERT INTO international VALUES (106,'WebGUI','Deutsch','Stil an alle nachfolgenden Seiten weitergeben.'); +INSERT INTO international VALUES (107,'WebGUI','Deutsch','Rechte'); +INSERT INTO international VALUES (108,'WebGUI','Deutsch','Besitzer'); +INSERT INTO international VALUES (109,'WebGUI','Deutsch','Besitzer kann anschauen?'); +INSERT INTO international VALUES (111,'WebGUI','Deutsch','Gruppe'); +INSERT INTO international VALUES (110,'WebGUI','Deutsch','Besitzer kann bearbeiten?'); +INSERT INTO international VALUES (112,'WebGUI','Deutsch','Gruppe kann anschauen?'); +INSERT INTO international VALUES (113,'WebGUI','Deutsch','Gruppe kann bearbeiten?'); +INSERT INTO international VALUES (114,'WebGUI','Deutsch','Kann jeder anschauen?'); +INSERT INTO international VALUES (115,'WebGUI','Deutsch','Kann jeder bearbeiten?'); +INSERT INTO international VALUES (116,'WebGUI','Deutsch','Rechte an alle nachfolgenden Seiten weitergeben.'); +INSERT INTO international VALUES (117,'WebGUI','Deutsch','Authentifizierungseinstellungen bearbeiten'); +INSERT INTO international VALUES (118,'WebGUI','Deutsch','anonyme Registrierung'); +INSERT INTO international VALUES (119,'WebGUI','Deutsch','Authentifizierungsmethode (Standard)'); +INSERT INTO international VALUES (120,'WebGUI','Deutsch','LDAP URL (Standard)'); +INSERT INTO international VALUES (121,'WebGUI','Deutsch','LDAP Identität (Standard)'); +INSERT INTO international VALUES (123,'WebGUI','Deutsch','LDAP Passwort Name'); +INSERT INTO international VALUES (122,'WebGUI','Deutsch','LDAP Identitäts-Name'); +INSERT INTO international VALUES (124,'WebGUI','Deutsch','Firmeninformationen bearbeiten'); +INSERT INTO international VALUES (125,'WebGUI','Deutsch','Firmenname'); +INSERT INTO international VALUES (126,'WebGUI','Deutsch','Emailadresse der Firma'); +INSERT INTO international VALUES (128,'WebGUI','Deutsch','Dateieinstellungen bearbeiten'); +INSERT INTO international VALUES (127,'WebGUI','Deutsch','Webseite der Firma'); +INSERT INTO international VALUES (130,'WebGUI','Deutsch','Maximale Dateigröße für Anhänge'); +INSERT INTO international VALUES (129,'WebGUI','Deutsch','Pfad zu WebGUI Extras'); +INSERT INTO international VALUES (131,'WebGUI','Deutsch','Pfad für Dateianhänge im Web'); +INSERT INTO international VALUES (132,'WebGUI','Deutsch','Pfad für Dateianhänge auf dem Server'); +INSERT INTO international VALUES (133,'WebGUI','Deutsch','Maileinstellungen bearbeiten'); +INSERT INTO international VALUES (134,'WebGUI','Deutsch','Passwortmeldung wiederherstellen'); +INSERT INTO international VALUES (136,'WebGUI','Deutsch','Homepage'); +INSERT INTO international VALUES (135,'WebGUI','Deutsch','SMTP Server'); +INSERT INTO international VALUES (137,'WebGUI','Deutsch','\"Seite wurde nicht gefunden\" Seite'); +INSERT INTO international VALUES (140,'WebGUI','Deutsch','Sonstige Einstellungen bearbeiten'); +INSERT INTO international VALUES (139,'WebGUI','Deutsch','Nein'); +INSERT INTO international VALUES (138,'WebGUI','Deutsch','Ja'); +INSERT INTO international VALUES (141,'WebGUI','Deutsch','\"Nicht gefunden Seite\"'); +INSERT INTO international VALUES (142,'WebGUI','Deutsch','Sitzungs Zeitüberschreitung'); +INSERT INTO international VALUES (143,'WebGUI','Deutsch','Einstellungen verwalten'); +INSERT INTO international VALUES (144,'WebGUI','Deutsch','Auswertungen anschauen'); +INSERT INTO international VALUES (145,'WebGUI','Deutsch','WebGUI Build Version'); +INSERT INTO international VALUES (146,'WebGUI','Deutsch','Aktive Sitzungen'); +INSERT INTO international VALUES (147,'WebGUI','Deutsch','sichtbare Seiten'); +INSERT INTO international VALUES (150,'WebGUI','Deutsch','Stil hinzufügen'); +INSERT INTO international VALUES (149,'WebGUI','Deutsch','Benutzer'); +INSERT INTO international VALUES (148,'WebGUI','Deutsch','sichtbare Widgets'); +INSERT INTO international VALUES (151,'WebGUI','Deutsch','Stil Name'); +INSERT INTO international VALUES (152,'WebGUI','Deutsch','Kopfzeile'); +INSERT INTO international VALUES (153,'WebGUI','Deutsch','Fußzeile'); +INSERT INTO international VALUES (154,'WebGUI','Deutsch','Style Sheet'); +INSERT INTO international VALUES (155,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diesen Stil löschen und alle Seiten die diesen Stil benutzen in den Stil \"Fail Safe\" überführen wollen?'); +INSERT INTO international VALUES (157,'WebGUI','Deutsch','Stile'); +INSERT INTO international VALUES (156,'WebGUI','Deutsch','Stil bearbeiten'); +INSERT INTO international VALUES (158,'WebGUI','Deutsch','Neuen Stil hinzufügen'); +INSERT INTO international VALUES (159,'WebGUI','Deutsch','Ausstehende Beiträge'); +INSERT INTO international VALUES (161,'WebGUI','Deutsch','Erstellt von'); +INSERT INTO international VALUES (160,'WebGUI','Deutsch','Erstellungsdatum'); +INSERT INTO international VALUES (162,'WebGUI','Deutsch','Sind Sie sicher, dass Sie alle Seiten und Widgets im Mülleimer löschen möchten?'); +INSERT INTO international VALUES (163,'WebGUI','Deutsch','Benutzer hinzufügen'); +INSERT INTO international VALUES (164,'WebGUI','Deutsch','Authentifizierungsmethode'); +INSERT INTO international VALUES (165,'WebGUI','Deutsch','LDAP URL'); +INSERT INTO international VALUES (166,'WebGUI','Deutsch','Connect DN'); +INSERT INTO international VALUES (167,'WebGUI','Deutsch','Sind Sie sicher, dass sie diesen Benutzer löschen möchten? Die Benutzerinformation geht damit endgültig verloren!'); +INSERT INTO international VALUES (168,'WebGUI','Deutsch','Benutzer bearbeiten'); +INSERT INTO international VALUES (169,'WebGUI','Deutsch','Neuen Benutzer hinzufügen'); +INSERT INTO international VALUES (172,'WebGUI','Deutsch','Artikel'); +INSERT INTO international VALUES (171,'WebGUI','Deutsch','Bearbeiten mit Attributen'); +INSERT INTO international VALUES (170,'WebGUI','Deutsch','suchen'); +INSERT INTO international VALUES (173,'WebGUI','Deutsch','Artikel hinzufügen'); +INSERT INTO international VALUES (174,'WebGUI','Deutsch','Titel anzeigen?'); +INSERT INTO international VALUES (178,'WebGUI','Deutsch','Text'); +INSERT INTO international VALUES (177,'WebGUI','Deutsch','Ende Datum'); +INSERT INTO international VALUES (176,'WebGUI','Deutsch','Start Datum'); +INSERT INTO international VALUES (179,'WebGUI','Deutsch','Bild'); +INSERT INTO international VALUES (175,'WebGUI','Deutsch','Makros ausführen?'); +INSERT INTO international VALUES (182,'WebGUI','Deutsch','Dateianhang'); +INSERT INTO international VALUES (181,'WebGUI','Deutsch','Link URL'); +INSERT INTO international VALUES (180,'WebGUI','Deutsch','Link Titel'); +INSERT INTO international VALUES (183,'WebGUI','Deutsch','Carriage Return beachten?'); +INSERT INTO international VALUES (184,'WebGUI','Deutsch','(Bitte anklicken, falls Sie nicht <br> in Ihrem Text hinzufügen.)'); +INSERT INTO international VALUES (185,'WebGUI','Deutsch','Artikel bearbeiten'); +INSERT INTO international VALUES (186,'WebGUI','Deutsch','Löschen'); +INSERT INTO international VALUES (187,'WebGUI','Deutsch','Veranstaltungskalender'); +INSERT INTO international VALUES (188,'WebGUI','Deutsch','Veranstaltungskalender hinzufügen'); +INSERT INTO international VALUES (189,'WebGUI','Deutsch','Einmaliges Ereignis'); +INSERT INTO international VALUES (191,'WebGUI','Deutsch','Woche'); +INSERT INTO international VALUES (190,'WebGUI','Deutsch','Tag'); +INSERT INTO international VALUES (192,'WebGUI','Deutsch','Termin hinzufügen'); +INSERT INTO international VALUES (193,'WebGUI','Deutsch','Wiederholt sich'); +INSERT INTO international VALUES (194,'WebGUI','Deutsch','bis'); +INSERT INTO international VALUES (195,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diesen Termin'); +INSERT INTO international VALUES (196,'WebGUI','Deutsch','und alle seine Wiederholungen löschen wollen?'); +INSERT INTO international VALUES (197,'WebGUI','Deutsch','Veranstaltungskalender bearbeiten'); +INSERT INTO international VALUES (198,'WebGUI','Deutsch','Veranstaltung bearbeiten'); +INSERT INTO international VALUES (199,'WebGUI','Deutsch','Extra Spalte'); +INSERT INTO international VALUES (200,'WebGUI','Deutsch','Extra Spalte hinzufügen'); +INSERT INTO international VALUES (201,'WebGUI','Deutsch','Platzhalter'); +INSERT INTO international VALUES (202,'WebGUI','Deutsch','Breite'); +INSERT INTO international VALUES (203,'WebGUI','Deutsch','StyleSheet Class'); +INSERT INTO international VALUES (306,'WebGUI','English','Username Binding'); +INSERT INTO international VALUES (3,'LinkList','English','Open in new window?'); +INSERT INTO international VALUES (307,'WebGUI','English','Use default meta tags?'); +INSERT INTO international VALUES (285,'WebGUI','Deutsch','Beitrag hinzufügen'); +INSERT INTO international VALUES (286,'WebGUI','Deutsch','(Bitte ausklicken, wenn Ihr Beitrag in HTML geschrieben ist)'); +INSERT INTO international VALUES (287,'WebGUI','Deutsch','Erstellungsdatum'); +INSERT INTO international VALUES (288,'WebGUI','Deutsch','Status'); +INSERT INTO international VALUES (289,'WebGUI','Deutsch','Bearbeiten/Löschen'); +INSERT INTO international VALUES (290,'WebGUI','Deutsch','Ohne Titel'); +INSERT INTO international VALUES (291,'WebGUI','Deutsch','Sind Sie sicher, dass Sie diesen Beitrag löschen wollen?'); +INSERT INTO international VALUES (292,'WebGUI','Deutsch','Benutzer Beitragssystem bearbeiten'); +INSERT INTO international VALUES (293,'WebGUI','Deutsch','Beitrag bearbeiten'); +INSERT INTO international VALUES (294,'WebGUI','Deutsch','Neuen Beitrag schreiben'); +INSERT INTO international VALUES (295,'WebGUI','Deutsch','Erstellungsdatum'); +INSERT INTO international VALUES (296,'WebGUI','Deutsch','Erstellt von'); +INSERT INTO international VALUES (297,'WebGUI','Deutsch','Erstellt von:'); +INSERT INTO international VALUES (298,'WebGUI','Deutsch','Erstellungsdatum:'); +INSERT INTO international VALUES (299,'WebGUI','Deutsch','Erlauben'); +INSERT INTO international VALUES (300,'WebGUI','Deutsch','Ausstehend verlassen'); +INSERT INTO international VALUES (301,'WebGUI','Deutsch','Verbieten'); +INSERT INTO international VALUES (302,'WebGUI','Deutsch','Bearbeiten'); +INSERT INTO international VALUES (303,'WebGUI','Deutsch','Zurück zur Beitragsliste'); +INSERT INTO international VALUES (304,'WebGUI','Deutsch','Sprache'); +INSERT INTO international VALUES (306,'WebGUI','Deutsch','Benutze LDAP Benutzername'); +INSERT INTO international VALUES (307,'WebGUI','Deutsch','Standard Meta Tags benutzen?'); +INSERT INTO international VALUES (1,'LinkList','English','Indent'); +INSERT INTO international VALUES (2,'LinkList','English','Line Spacing'); +INSERT INTO international VALUES (4,'LinkList','English','Bullet'); +INSERT INTO international VALUES (2,'LinkList','Deutsch','Zeilenabstand'); +INSERT INTO international VALUES (4,'LinkList','Deutsch','Kugel'); +INSERT INTO international VALUES (3,'LinkList','Deutsch','In neuem Fenster öffnen?'); +INSERT INTO international VALUES (1,'LinkList','Deutsch','Tabulator'); +INSERT INTO international VALUES (308,'WebGUI','English','Edit Profile Settings'); +INSERT INTO international VALUES (309,'WebGUI','English','Allow real name?'); +INSERT INTO international VALUES (310,'WebGUI','English','Allow extra contact information?'); +INSERT INTO international VALUES (311,'WebGUI','English','Allow home information?'); +INSERT INTO international VALUES (312,'WebGUI','English','Allow business information?'); +INSERT INTO international VALUES (313,'WebGUI','English','Allow miscellaneous information?'); +INSERT INTO international VALUES (314,'WebGUI','English','First Name'); +INSERT INTO international VALUES (315,'WebGUI','English','Middle Name'); +INSERT INTO international VALUES (316,'WebGUI','English','Last Name'); +INSERT INTO international VALUES (317,'WebGUI','English','ICQ UIN'); +INSERT INTO international VALUES (318,'WebGUI','English','AIM Id'); +INSERT INTO international VALUES (319,'WebGUI','English','MSN Messenger Id'); +INSERT INTO international VALUES (320,'WebGUI','English','Yahoo! Messenger Id'); +INSERT INTO international VALUES (321,'WebGUI','English','Cell Phone'); +INSERT INTO international VALUES (322,'WebGUI','English','Pager'); +INSERT INTO international VALUES (323,'WebGUI','English','Home Address'); +INSERT INTO international VALUES (324,'WebGUI','English','Home City'); +INSERT INTO international VALUES (325,'WebGUI','English','Home State'); +INSERT INTO international VALUES (326,'WebGUI','English','Home Zip Code'); +INSERT INTO international VALUES (327,'WebGUI','English','Home Country'); +INSERT INTO international VALUES (328,'WebGUI','English','Home Phone'); +INSERT INTO international VALUES (329,'WebGUI','English','Work Address'); +INSERT INTO international VALUES (330,'WebGUI','English','Work City'); +INSERT INTO international VALUES (331,'WebGUI','English','Work State'); +INSERT INTO international VALUES (332,'WebGUI','English','Work Zip Code'); +INSERT INTO international VALUES (333,'WebGUI','English','Work Country'); +INSERT INTO international VALUES (334,'WebGUI','English','Work Phone'); +INSERT INTO international VALUES (335,'WebGUI','English','Gender'); +INSERT INTO international VALUES (336,'WebGUI','English','Birth Date'); +INSERT INTO international VALUES (337,'WebGUI','English','Homepage URL'); +INSERT INTO international VALUES (338,'WebGUI','English','Edit Profile'); +INSERT INTO international VALUES (339,'WebGUI','English','Male'); +INSERT INTO international VALUES (340,'WebGUI','English','Female'); +INSERT INTO international VALUES (341,'WebGUI','English','Edit profile.'); +INSERT INTO international VALUES (342,'WebGUI','English','Edit account information.'); +INSERT INTO international VALUES (343,'WebGUI','English','View profile.'); +INSERT INTO international VALUES (344,'WebGUI','English','View message log.'); +INSERT INTO international VALUES (345,'WebGUI','English','Not A Member'); +INSERT INTO international VALUES (346,'WebGUI','English','This user is no longer a member of our site. We have no further information about this user.'); +INSERT INTO international VALUES (347,'WebGUI','English','View Profile For'); +INSERT INTO international VALUES (348,'WebGUI','English','Name'); +INSERT INTO international VALUES (308,'WebGUI','Deutsch','Profil bearbeiten'); +INSERT INTO international VALUES (309,'WebGUI','Deutsch','Name anzeigen?'); +INSERT INTO international VALUES (310,'WebGUI','Deutsch','Kontaktinformationen anzeigen?'); +INSERT INTO international VALUES (311,'WebGUI','Deutsch','Privatadresse anzeigen?'); +INSERT INTO international VALUES (312,'WebGUI','Deutsch','Geschäftsadresse anzeigen?'); +INSERT INTO international VALUES (313,'WebGUI','Deutsch','Zusätzliche Informationen anzeigen?'); +INSERT INTO international VALUES (314,'WebGUI','Deutsch','Vorname'); +INSERT INTO international VALUES (315,'WebGUI','Deutsch','Zweiter Vorname'); +INSERT INTO international VALUES (316,'WebGUI','Deutsch','Nachname'); +INSERT INTO international VALUES (317,'WebGUI','Deutsch','ICQ UIN'); +INSERT INTO international VALUES (318,'WebGUI','Deutsch','AIM Id'); +INSERT INTO international VALUES (319,'WebGUI','Deutsch','MSN Messenger Id'); +INSERT INTO international VALUES (320,'WebGUI','Deutsch','Yahoo! Messenger Id'); +INSERT INTO international VALUES (321,'WebGUI','Deutsch','Mobiltelefon'); +INSERT INTO international VALUES (322,'WebGUI','Deutsch','Pager'); +INSERT INTO international VALUES (323,'WebGUI','Deutsch','Strasse (privat)'); +INSERT INTO international VALUES (324,'WebGUI','Deutsch','Ort (privat)'); +INSERT INTO international VALUES (325,'WebGUI','Deutsch','Bundesland (privat)'); +INSERT INTO international VALUES (326,'WebGUI','Deutsch','Postleitzahl (privat)'); +INSERT INTO international VALUES (327,'WebGUI','Deutsch','Land (privat)'); +INSERT INTO international VALUES (328,'WebGUI','Deutsch','Telefon (privat)'); +INSERT INTO international VALUES (329,'WebGUI','Deutsch','Strasse (Büro)'); +INSERT INTO international VALUES (330,'WebGUI','Deutsch','Ort (Büro)'); +INSERT INTO international VALUES (331,'WebGUI','Deutsch','Bundesland (Büro)'); +INSERT INTO international VALUES (332,'WebGUI','Deutsch','Postleitzahl (Büro)'); +INSERT INTO international VALUES (333,'WebGUI','Deutsch','Land (Büro)'); +INSERT INTO international VALUES (334,'WebGUI','Deutsch','Telefon (Büro)'); +INSERT INTO international VALUES (335,'WebGUI','Deutsch','Geschlecht'); +INSERT INTO international VALUES (336,'WebGUI','Deutsch','Geburtstag'); +INSERT INTO international VALUES (337,'WebGUI','Deutsch','Homepage URL'); +INSERT INTO international VALUES (338,'WebGUI','Deutsch','Profil bearbeiten'); +INSERT INTO international VALUES (339,'WebGUI','Deutsch','männlich'); +INSERT INTO international VALUES (340,'WebGUI','Deutsch','weiblich'); +INSERT INTO international VALUES (341,'WebGUI','Deutsch','Profil bearbeiten.'); +INSERT INTO international VALUES (342,'WebGUI','Deutsch','Benutzerkonto bearbeiten.'); +INSERT INTO international VALUES (343,'WebGUI','Deutsch','Profil anschauen.'); +INSERT INTO international VALUES (345,'WebGUI','Deutsch','Kein Mitglied'); +INSERT INTO international VALUES (346,'WebGUI','Deutsch','Dieser Benutzer ist kein Mitglied. Wir haben keine weiteren Informationen über ihn.'); +INSERT INTO international VALUES (347,'WebGUI','Deutsch','Profil anschauen von'); +INSERT INTO international VALUES (349,'WebGUI','English','Latest version available'); +INSERT INTO international VALUES (259,'WebGUI','Español','Reporte SQL'); +INSERT INTO international VALUES (258,'WebGUI','Español','Editar Encuesta'); +INSERT INTO international VALUES (257,'WebGUI','Español','(Ingrese una por línea. No más de 20)'); +INSERT INTO international VALUES (255,'WebGUI','Español','Pregunta'); +INSERT INTO international VALUES (256,'WebGUI','Español','Respuestas'); +INSERT INTO international VALUES (254,'WebGUI','Español','Ancho del gráfico'); +INSERT INTO international VALUES (253,'WebGUI','Español','Quiénes pueden votar?'); +INSERT INTO international VALUES (251,'WebGUI','Español','Agregar Encuesta'); +INSERT INTO international VALUES (252,'WebGUI','Español','Activar'); +INSERT INTO international VALUES (250,'WebGUI','Español','Encuesta'); +INSERT INTO international VALUES (249,'WebGUI','Español','Última respuesta'); +INSERT INTO international VALUES (247,'WebGUI','Español','Inicio'); +INSERT INTO international VALUES (248,'WebGUI','Español','Respuestas'); +INSERT INTO international VALUES (246,'WebGUI','Español','Mandar Nuevo Mensage'); +INSERT INTO international VALUES (244,'WebGUI','Español','Autor'); +INSERT INTO international VALUES (245,'WebGUI','Español','Fecha'); +INSERT INTO international VALUES (243,'WebGUI','Español','Siguiente'); +INSERT INTO international VALUES (241,'WebGUI','Español','Anterior'); +INSERT INTO international VALUES (242,'WebGUI','Español','Volver a la Lista de Mensages'); +INSERT INTO international VALUES (239,'WebGUI','Español','Fecha:'); +INSERT INTO international VALUES (240,'WebGUI','Español','ID del mensage:'); +INSERT INTO international VALUES (237,'WebGUI','Español','Asunto:'); +INSERT INTO international VALUES (238,'WebGUI','Español','Autor:'); +INSERT INTO international VALUES (235,'WebGUI','Español','Editar mensage'); +INSERT INTO international VALUES (236,'WebGUI','Español','Responder'); +INSERT INTO international VALUES (234,'WebGUI','Español','Respondiendo...'); +INSERT INTO international VALUES (232,'WebGUI','Español','sin título'); +INSERT INTO international VALUES (233,'WebGUI','Español','(eom)'); +INSERT INTO international VALUES (231,'WebGUI','Español','Mandando Nuevo Mensage ...'); +INSERT INTO international VALUES (229,'WebGUI','Español','Asunto'); +INSERT INTO international VALUES (230,'WebGUI','Español','Mensage'); +INSERT INTO international VALUES (228,'WebGUI','Español','Editar Mensage...'); +INSERT INTO international VALUES (227,'WebGUI','Español','Editar Tabla de Mensages'); +INSERT INTO international VALUES (226,'WebGUI','Español','Timeout de edición'); +INSERT INTO international VALUES (225,'WebGUI','Español','Mensages por página'); +INSERT INTO international VALUES (224,'WebGUI','Español','Quienes pueden mandar?'); +INSERT INTO international VALUES (223,'WebGUI','Español','Table de Mensages'); +INSERT INTO international VALUES (222,'WebGUI','Español','Agregar Tabla de Mensages'); +INSERT INTO international VALUES (221,'WebGUI','Español','Agregar nuevo Enlace'); +INSERT INTO international VALUES (220,'WebGUI','Español','Editar Enlace'); +INSERT INTO international VALUES (218,'WebGUI','Español','Editar Lista de Enlaces'); +INSERT INTO international VALUES (219,'WebGUI','Español','Agregar Lista de Enlaces'); +INSERT INTO international VALUES (217,'WebGUI','Español','Está seguro de querer eliminar éste enlace?'); +INSERT INTO international VALUES (216,'WebGUI','Español','URL'); +INSERT INTO international VALUES (215,'WebGUI','Español','Agregar Enlace'); +INSERT INTO international VALUES (214,'WebGUI','Español','Lista de Enlaces'); +INSERT INTO international VALUES (213,'WebGUI','Español','Editar Pregunta'); +INSERT INTO international VALUES (212,'WebGUI','Español','Agregar nueva pregunta.'); +INSERT INTO international VALUES (211,'WebGUI','Español','Editar F.A.Q.'); +INSERT INTO international VALUES (209,'WebGUI','Español','Respuesta'); +INSERT INTO international VALUES (210,'WebGUI','Español','Está seguro de querer eliminar ésta pregunta?'); +INSERT INTO international VALUES (208,'WebGUI','Español','Pregunta'); +INSERT INTO international VALUES (207,'WebGUI','Español','Agregar Pregunta'); +INSERT INTO international VALUES (206,'WebGUI','Español','Agregar F.A.Q.'); +INSERT INTO international VALUES (205,'WebGUI','Español','F.A.Q.'); +INSERT INTO international VALUES (204,'WebGUI','Español','Editar Columna Extra'); +INSERT INTO international VALUES (203,'WebGUI','Español','Clase StyleSheet'); +INSERT INTO international VALUES (202,'WebGUI','Español','Ancho'); +INSERT INTO international VALUES (201,'WebGUI','Español','Espaciador'); +INSERT INTO international VALUES (200,'WebGUI','Español','Agregar Columna Extra'); +INSERT INTO international VALUES (199,'WebGUI','Español','Columna Extra'); +INSERT INTO international VALUES (198,'WebGUI','Español','Editar Evento'); +INSERT INTO international VALUES (197,'WebGUI','Español','Editar Calendario de Eventos'); +INSERT INTO international VALUES (196,'WebGUI','Español','y todos las recurrencias del mismo'); +INSERT INTO international VALUES (195,'WebGUI','Español','Está segugo de querer eliminar éste evento'); +INSERT INTO international VALUES (194,'WebGUI','Español','hasta'); +INSERT INTO international VALUES (193,'WebGUI','Español','Se repite cada'); +INSERT INTO international VALUES (192,'WebGUI','Español','Agregar Evento'); +INSERT INTO international VALUES (191,'WebGUI','Español','Semana'); +INSERT INTO international VALUES (187,'WebGUI','Español','Calendario de Eventos'); +INSERT INTO international VALUES (188,'WebGUI','Español','Agregar Calendario de Eventos'); +INSERT INTO international VALUES (189,'WebGUI','Español','Sucede solo una vez.'); +INSERT INTO international VALUES (190,'WebGUI','Español','Día'); +INSERT INTO international VALUES (186,'WebGUI','Español','Eliminar'); +INSERT INTO international VALUES (185,'WebGUI','Español','Editar Artículo'); +INSERT INTO international VALUES (184,'WebGUI','Español','(marque si no está agregando <br> manualmente.)'); +INSERT INTO international VALUES (183,'WebGUI','Español','Convertir saltos de carro?'); +INSERT INTO international VALUES (181,'WebGUI','Español','Link URL'); +INSERT INTO international VALUES (182,'WebGUI','Español','Adjuntar'); +INSERT INTO international VALUES (179,'WebGUI','Español','Imagen'); +INSERT INTO international VALUES (180,'WebGUI','Español','Link Título'); +INSERT INTO international VALUES (178,'WebGUI','Español','Cuerpo'); +INSERT INTO international VALUES (173,'WebGUI','Español','Agregar Artículo'); +INSERT INTO international VALUES (174,'WebGUI','Español','Mostrar el título?'); +INSERT INTO international VALUES (175,'WebGUI','Español','Procesar macros?'); +INSERT INTO international VALUES (176,'WebGUI','Español','Fecha Inicio'); +INSERT INTO international VALUES (177,'WebGUI','Español','Fecha finalización'); +INSERT INTO international VALUES (171,'WebGUI','Español','rich edit'); +INSERT INTO international VALUES (172,'WebGUI','Español','Artículo'); +INSERT INTO international VALUES (170,'WebGUI','Español','buscar'); +INSERT INTO international VALUES (169,'WebGUI','Español','Agregar nuevo usuario'); +INSERT INTO international VALUES (168,'WebGUI','Español','Editar Usuario'); +INSERT INTO international VALUES (166,'WebGUI','Español','Connect DN'); +INSERT INTO international VALUES (167,'WebGUI','Español','Está seguro de querer eliminar éste usuario? Tenga en cuenta que toda la información del usuario será eliminada permanentemente si procede.'); +INSERT INTO international VALUES (164,'WebGUI','Español','Método de Auntentificación'); +INSERT INTO international VALUES (165,'WebGUI','Español','LDAP URL'); +INSERT INTO international VALUES (163,'WebGUI','Español','Agregar usuario'); +INSERT INTO international VALUES (162,'WebGUI','Español','Está seguro de querer eliminar todos los elementos de la papelera?'); +INSERT INTO international VALUES (161,'WebGUI','Español','Contribuido por'); +INSERT INTO international VALUES (160,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (159,'WebGUI','Español','Contribuciones Pendientes'); +INSERT INTO international VALUES (156,'WebGUI','Español','Editar Estilo'); +INSERT INTO international VALUES (157,'WebGUI','Español','Estilos'); +INSERT INTO international VALUES (158,'WebGUI','Español','Agregar nuevo Estilo'); +INSERT INTO international VALUES (155,'WebGUI','Español','\"Está seguro de querer eliminar éste estilo y migrar todas la páginas que lo usen al estilo \"\"Fail Safe\"\"?\"'); +INSERT INTO international VALUES (152,'WebGUI','Español','Encabezado'); +INSERT INTO international VALUES (153,'WebGUI','Español','Pie'); +INSERT INTO international VALUES (154,'WebGUI','Español','Hoja de Estilo'); +INSERT INTO international VALUES (151,'WebGUI','Español','Nombre del Estilo'); +INSERT INTO international VALUES (150,'WebGUI','Español','Agregar Estilo'); +INSERT INTO international VALUES (149,'WebGUI','Español','Usuarios'); +INSERT INTO international VALUES (148,'WebGUI','Español','Widgets Visibles'); +INSERT INTO international VALUES (147,'WebGUI','Español','Páginas Visibles'); +INSERT INTO international VALUES (146,'WebGUI','Español','Sesiones activas'); +INSERT INTO international VALUES (145,'WebGUI','Español','Versión de WebGUI'); +INSERT INTO international VALUES (144,'WebGUI','Español','Ver estadísticas'); +INSERT INTO international VALUES (143,'WebGUI','Español','Configurar Opciones'); +INSERT INTO international VALUES (142,'WebGUI','Español','Timeout de sesión'); +INSERT INTO international VALUES (141,'WebGUI','Español','Página no encontrada'); +INSERT INTO international VALUES (139,'WebGUI','Español','No'); +INSERT INTO international VALUES (140,'WebGUI','Español','Editar configuraciones misceláneas'); +INSERT INTO international VALUES (138,'WebGUI','Español','Si'); +INSERT INTO international VALUES (135,'WebGUI','Español','Servidor SMTP'); +INSERT INTO international VALUES (136,'WebGUI','Español','Página de Inicio'); +INSERT INTO international VALUES (137,'WebGUI','Español','Página: Página No Encontrada'); +INSERT INTO international VALUES (133,'WebGUI','Español','Editar configuración de e-mail'); +INSERT INTO international VALUES (134,'WebGUI','Español','Mensage de Recuperar Password'); +INSERT INTO international VALUES (129,'WebGUI','Español','Camino a Extras de WebGUI'); +INSERT INTO international VALUES (130,'WebGUI','Español','Tamaño máximo de adjuntos'); +INSERT INTO international VALUES (131,'WebGUI','Español','Camino Web de los archivos adjuntos'); +INSERT INTO international VALUES (132,'WebGUI','Español','Camino en server de los archivos adjuntos'); +INSERT INTO international VALUES (128,'WebGUI','Español','Editar Opciones de Archivos'); +INSERT INTO international VALUES (124,'WebGUI','Español','Editar Información de la Companía'); +INSERT INTO international VALUES (125,'WebGUI','Español','Nombre de la Companía'); +INSERT INTO international VALUES (126,'WebGUI','Español','E-mail de la Companía'); +INSERT INTO international VALUES (127,'WebGUI','Español','URL de la Companía'); +INSERT INTO international VALUES (123,'WebGUI','Español','Password LDAP'); +INSERT INTO international VALUES (122,'WebGUI','Español','Nombre Identidad LDAP'); +INSERT INTO international VALUES (121,'WebGUI','Español','Identidad LDAP (por defecto)'); +INSERT INTO international VALUES (120,'WebGUI','Español','URL LDAP (por defecto)'); +INSERT INTO international VALUES (119,'WebGUI','Español','Método de Autentificación (por defecto)'); +INSERT INTO international VALUES (118,'WebGUI','Español','Registración Anónima'); +INSERT INTO international VALUES (117,'WebGUI','Español','Editar Opciones de Auntentificación'); +INSERT INTO international VALUES (116,'WebGUI','Español','Marque para dar éstos privilegios a todas las sub-páginas.'); +INSERT INTO international VALUES (115,'WebGUI','Español','Cualquiera puede editar?'); +INSERT INTO international VALUES (114,'WebGUI','Español','Cualquiera puede ver?'); +INSERT INTO international VALUES (113,'WebGUI','Español','Grupo puede editar?'); +INSERT INTO international VALUES (112,'WebGUI','Español','Grupo puede ver?'); +INSERT INTO international VALUES (111,'WebGUI','Español','Grupo'); +INSERT INTO international VALUES (110,'WebGUI','Español','Dueño puede editar?'); +INSERT INTO international VALUES (109,'WebGUI','Español','Dueño puede ver?'); +INSERT INTO international VALUES (108,'WebGUI','Español','Dueño'); +INSERT INTO international VALUES (107,'WebGUI','Español','Privilegios'); +INSERT INTO international VALUES (106,'WebGUI','Español','Marque para dar éste estilo a todas las sub-páginas.'); +INSERT INTO international VALUES (105,'WebGUI','Español','Estilo'); +INSERT INTO international VALUES (104,'WebGUI','Español','URL de la página'); +INSERT INTO international VALUES (103,'WebGUI','Español','Propio de la página'); +INSERT INTO international VALUES (102,'WebGUI','Español','Editar Página'); +INSERT INTO international VALUES (101,'WebGUI','Español','Está seguro de querer eliminar ésta página'); +INSERT INTO international VALUES (100,'WebGUI','Español','Meta Tags'); +INSERT INTO international VALUES (98,'WebGUI','Español','Agregar Página'); +INSERT INTO international VALUES (99,'WebGUI','Español','Título'); +INSERT INTO international VALUES (97,'WebGUI','Español','Ordenar por Objeto'); +INSERT INTO international VALUES (96,'WebGUI','Español','Ordenar por Acción'); +INSERT INTO international VALUES (94,'WebGUI','Español','Vea también'); +INSERT INTO international VALUES (95,'WebGUI','Español','Índice de Ayuda'); +INSERT INTO international VALUES (93,'WebGUI','Español','Ayuda'); +INSERT INTO international VALUES (92,'WebGUI','Español','Siguiente página'); +INSERT INTO international VALUES (91,'WebGUI','Español','Página previa'); +INSERT INTO international VALUES (90,'WebGUI','Español','Agregar nuevo grupo'); +INSERT INTO international VALUES (89,'WebGUI','Español','Grupos'); +INSERT INTO international VALUES (88,'WebGUI','Español','Usuarios en Grupo'); +INSERT INTO international VALUES (87,'WebGUI','Español','Editar Grupo'); +INSERT INTO international VALUES (86,'WebGUI','Español','Está segugo de querer eliminar éste grupo? Tenga en cuenta que la eliminación es permanente y removerá todos los privilegios asociados con el grupo.'); +INSERT INTO international VALUES (85,'WebGUI','Español','Descripción'); +INSERT INTO international VALUES (84,'WebGUI','Español','Nombre del Grupo'); +INSERT INTO international VALUES (83,'WebGUI','Español','Agregar Grupo'); +INSERT INTO international VALUES (82,'WebGUI','Español','Funciones Administrativas...'); +INSERT INTO international VALUES (81,'WebGUI','Español','La cuenta se actualizó con éxito!'); +INSERT INTO international VALUES (80,'WebGUI','Español','La cuenta se ha creado con éxito!'); +INSERT INTO international VALUES (78,'WebGUI','Español','Su password no concuerda. Trate de nuevo.'); +INSERT INTO international VALUES (79,'WebGUI','Español','No se puede conectar con el servidor LDAP'); +INSERT INTO international VALUES (77,'WebGUI','Español','El nombre de cuenta ya está en uso por otro miembro. Por favor trate con otro nombre de usuario. Los siguiente son algunas sugerencias:'); +INSERT INTO international VALUES (76,'WebGUI','Español','El e-mail no está en nuestra base de datos'); +INSERT INTO international VALUES (75,'WebGUI','Español','La información de su cuenta ha sido enviada a su e-mail-'); +INSERT INTO international VALUES (74,'WebGUI','Español','Información de la Cuenta'); +INSERT INTO international VALUES (73,'WebGUI','Español','Ingresar.'); +INSERT INTO international VALUES (72,'WebGUI','Español','recuperar'); +INSERT INTO international VALUES (71,'WebGUI','Español','Recuperar password'); +INSERT INTO international VALUES (70,'WebGUI','Español','Error'); +INSERT INTO international VALUES (69,'WebGUI','Español','Por favor contacte a su administrador por asistencia.'); +INSERT INTO international VALUES (68,'WebGUI','Español','La información de su cuenta no es válida. O la cuenta no existe'); +INSERT INTO international VALUES (67,'WebGUI','Español','Crear nueva Cuenta'); +INSERT INTO international VALUES (66,'WebGUI','Español','Ingresar'); +INSERT INTO international VALUES (65,'WebGUI','Español','Por favor desactive mi cuenta permanentemente'); +INSERT INTO international VALUES (64,'WebGUI','Español','Salir'); +INSERT INTO international VALUES (63,'WebGUI','Español','Encender Admin'); +INSERT INTO international VALUES (62,'WebGUI','Español','guardar'); +INSERT INTO international VALUES (61,'WebGUI','Español','Actualizar información de la Cuenta'); +INSERT INTO international VALUES (60,'WebGUI','Español','Está seguro que quiere desactivar su cuenta. Si continúa su información se perderá permanentemente.'); +INSERT INTO international VALUES (59,'WebGUI','Español','Perdí mi password'); +INSERT INTO international VALUES (58,'WebGUI','Español','Ya tengo una cuenta!'); +INSERT INTO international VALUES (57,'WebGUI','Español','Solo es necesaria si desea usar opciones que requieren e-mail.'); +INSERT INTO international VALUES (56,'WebGUI','Español','Dirección de e-mail'); +INSERT INTO international VALUES (55,'WebGUI','Español','Password (confirmar)'); +INSERT INTO international VALUES (54,'WebGUI','Español','Crear Cuenta'); +INSERT INTO international VALUES (53,'WebGUI','Español','Hacer página imprimible'); +INSERT INTO international VALUES (52,'WebGUI','Español','ingresar'); +INSERT INTO international VALUES (51,'WebGUI','Español','Password'); +INSERT INTO international VALUES (50,'WebGUI','Español','Nombre usuario'); +INSERT INTO international VALUES (49,'WebGUI','Español','\"Click aquí para salir.\"'); +INSERT INTO international VALUES (48,'WebGUI','Español','Hola'); +INSERT INTO international VALUES (47,'WebGUI','Español','Home'); +INSERT INTO international VALUES (46,'WebGUI','Español','Mi Cuenta'); +INSERT INTO international VALUES (45,'WebGUI','Español','No'); +INSERT INTO international VALUES (44,'WebGUI','Español','Si'); +INSERT INTO international VALUES (43,'WebGUI','Español','Está seguro de querer eliminar éste contenido?'); +INSERT INTO international VALUES (42,'WebGUI','Español','Por favor confirme'); +INSERT INTO international VALUES (41,'WebGUI','Español','Esta intentando eliminar un componente vital del sistema WebGUI. Si continúa puede causar un mal funcionamiento de WebGUI.'); +INSERT INTO international VALUES (40,'WebGUI','Español','Componente Vital'); +INSERT INTO international VALUES (39,'WebGUI','Español','No tiene suficientes privilegios para ingresar a ésta página.'); +INSERT INTO international VALUES (38,'WebGUI','Español','\"No tiene privilegios suficientes para realizar ésta operación. Por favor ingrese con una cuenta que posea los privilegios suficientes antes de intentar ésta operación.\"'); +INSERT INTO international VALUES (37,'WebGUI','Español','Permiso Denegado!'); +INSERT INTO international VALUES (36,'WebGUI','Español','Debe ser administrador para realizar esta tarea. Por favor contacte a uno de los administradores. La siguiente es una lista de los administradores de éste sistema:'); +INSERT INTO international VALUES (35,'WebGUI','Español','Funciones Administrativas'); +INSERT INTO international VALUES (34,'WebGUI','Español','fijar fecha'); +INSERT INTO international VALUES (33,'WebGUI','Español','Sabado'); +INSERT INTO international VALUES (32,'WebGUI','Español','Viernes'); +INSERT INTO international VALUES (31,'WebGUI','Español','Jueves'); +INSERT INTO international VALUES (30,'WebGUI','Español','Miércoles'); +INSERT INTO international VALUES (29,'WebGUI','Español','Martes'); +INSERT INTO international VALUES (28,'WebGUI','Español','Lunes'); +INSERT INTO international VALUES (26,'WebGUI','Español','Diciembre'); +INSERT INTO international VALUES (27,'WebGUI','Español','Domingo'); +INSERT INTO international VALUES (24,'WebGUI','Español','Octubre'); +INSERT INTO international VALUES (25,'WebGUI','Español','Noviembre'); +INSERT INTO international VALUES (23,'WebGUI','Español','Septiembre'); +INSERT INTO international VALUES (22,'WebGUI','Español','Agosto'); +INSERT INTO international VALUES (21,'WebGUI','Español','Julio'); +INSERT INTO international VALUES (20,'WebGUI','Español','Junio'); +INSERT INTO international VALUES (19,'WebGUI','Español','Mayo'); +INSERT INTO international VALUES (18,'WebGUI','Español','Abril'); +INSERT INTO international VALUES (17,'WebGUI','Español','Marzo'); +INSERT INTO international VALUES (16,'WebGUI','Español','Febrero'); +INSERT INTO international VALUES (15,'WebGUI','Español','Enero'); +INSERT INTO international VALUES (14,'WebGUI','Español','Ver contribuciones pendientes.'); +INSERT INTO international VALUES (13,'WebGUI','Español','Ver índice de Ayuda'); +INSERT INTO international VALUES (12,'WebGUI','Español','Apagar Admin'); +INSERT INTO international VALUES (11,'WebGUI','Español','Vaciar Papelera'); +INSERT INTO international VALUES (10,'WebGUI','Español','Ver Papelera'); +INSERT INTO international VALUES (9,'WebGUI','Español','Ver Portapapeles'); +INSERT INTO international VALUES (8,'WebGUI','Español','Ver Página No Encontrada'); +INSERT INTO international VALUES (7,'WebGUI','Español','Configurar Usuarios'); +INSERT INTO international VALUES (6,'WebGUI','Español','Configurar Estilos'); +INSERT INTO international VALUES (5,'WebGUI','Español','Configurar Grupos.'); +INSERT INTO international VALUES (4,'WebGUI','Español','Configurar Opciones.'); +INSERT INTO international VALUES (3,'WebGUI','Español','Pegar desde el Portapapeles...'); +INSERT INTO international VALUES (2,'WebGUI','Español','Página'); +INSERT INTO international VALUES (1,'WebGUI','Español','Agregar Contenido ...'); +INSERT INTO international VALUES (260,'WebGUI','Español','Agregar Reporte SQL'); +INSERT INTO international VALUES (261,'WebGUI','Español','Modelo'); +INSERT INTO international VALUES (262,'WebGUI','Español','Consulta'); +INSERT INTO international VALUES (263,'WebGUI','Español','DSN'); +INSERT INTO international VALUES (264,'WebGUI','Español','Usuario de la Base de Datos'); +INSERT INTO international VALUES (265,'WebGUI','Español','Password de la Base de Datos'); +INSERT INTO international VALUES (266,'WebGUI','Español','Editar Reporte SQL'); +INSERT INTO international VALUES (267,'WebGUI','Español','Error: El DSN especificado está en un formato incorrecto.'); +INSERT INTO international VALUES (268,'WebGUI','Español','Error: El SQL especificado está en un formato incorrecto.'); +INSERT INTO international VALUES (269,'WebGUI','Español','Error: Hay un problema con la consulta.'); +INSERT INTO international VALUES (270,'WebGUI','Español','Error: No se puede conectar a la base de datos.'); +INSERT INTO international VALUES (277,'WebGUI','Español','Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (278,'WebGUI','Español','Agregar Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (2,'UserSubmission','Español','Quiénes pueden contribuir?'); +INSERT INTO international VALUES (280,'WebGUI','Español','Contribuciones por página'); +INSERT INTO international VALUES (281,'WebGUI','Español','Aprobado'); +INSERT INTO international VALUES (282,'WebGUI','Español','Denegado'); +INSERT INTO international VALUES (283,'WebGUI','Español','Pendiente'); +INSERT INTO international VALUES (284,'WebGUI','Español','Estado por defecto'); +INSERT INTO international VALUES (285,'WebGUI','Español','Contribuir'); +INSERT INTO international VALUES (286,'WebGUI','Español','(desmarque si está escribiendo la contribución en HTML.)'); +INSERT INTO international VALUES (287,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (288,'WebGUI','Español','Estado'); +INSERT INTO international VALUES (289,'WebGUI','Español','Editar/Eliminar'); +INSERT INTO international VALUES (290,'WebGUI','Español','Sin título'); +INSERT INTO international VALUES (291,'WebGUI','Español','Está seguro de querer eliminar ésta contribución?'); +INSERT INTO international VALUES (292,'WebGUI','Español','Editar Sistema de Contribución de Usuarios'); +INSERT INTO international VALUES (293,'WebGUI','Español','Editar Contribución'); +INSERT INTO international VALUES (294,'WebGUI','Español','Nueva Contribución'); +INSERT INTO international VALUES (295,'WebGUI','Español','Fecha Contribución'); +INSERT INTO international VALUES (296,'WebGUI','Español','Contribuida por'); +INSERT INTO international VALUES (297,'WebGUI','Español','Contribuida por:'); +INSERT INTO international VALUES (298,'WebGUI','Español','Fecha Contribución:'); +INSERT INTO international VALUES (299,'WebGUI','Español','Aprobar'); +INSERT INTO international VALUES (300,'WebGUI','Español','Dejan pendiente'); +INSERT INTO international VALUES (301,'WebGUI','Español','Denegar'); +INSERT INTO international VALUES (302,'WebGUI','Español','Editar'); +INSERT INTO international VALUES (303,'WebGUI','Español','Regresar a lista de contribuciones'); +INSERT INTO international VALUES (304,'WebGUI','Español','Idioma'); +INSERT INTO international VALUES (1,'FAQ','English','Proceed to add question?'); +INSERT INTO international VALUES (5,'LinkList','English','Proceed to add link?'); +INSERT INTO international VALUES (1,'EventsCalendar','English','Proceed to add event?'); +INSERT INTO international VALUES (1,'UserSubmission','English','Who can approve?'); +INSERT INTO international VALUES (3,'UserSubmission','English','You have a new user submission to approve.'); +INSERT INTO international VALUES (350,'WebGUI','English','Completed'); +INSERT INTO international VALUES (4,'UserSubmission','English','Your submission has been approved.'); +INSERT INTO international VALUES (5,'UserSubmission','English','Your submission has been denied.'); +INSERT INTO international VALUES (351,'WebGUI','English','Message Log Entry'); +INSERT INTO international VALUES (352,'WebGUI','English','Date Of Entry'); +INSERT INTO international VALUES (353,'WebGUI','English','You have no message log entries at this time.'); +INSERT INTO international VALUES (354,'WebGUI','English','View message log.'); +INSERT INTO international VALUES (1,'SiteMap','English','Add Site Map'); +INSERT INTO international VALUES (2,'SiteMap','English','Site Map'); +INSERT INTO international VALUES (3,'SiteMap','English','Starting from this level?'); +INSERT INTO international VALUES (4,'SiteMap','English','Depth To Traverse'); +INSERT INTO international VALUES (5,'SiteMap','English','Edit Site Map'); +INSERT INTO international VALUES (6,'SiteMap','English','Indent'); +INSERT INTO international VALUES (7,'SiteMap','English','Bullet'); +INSERT INTO international VALUES (8,'SiteMap','English','Line Spacing'); + + + diff --git a/lib/WebGUI.pm b/lib/WebGUI.pm index c91f2e426..1b2eb1328 100644 --- a/lib/WebGUI.pm +++ b/lib/WebGUI.pm @@ -1,5 +1,5 @@ package WebGUI; -our $VERSION = "2.3.4"; +our $VERSION = "2.4.0"; #------------------------------------------------------------------- # WebGUI is Copyright 2001 Plain Black Software. @@ -66,7 +66,6 @@ sub _displayAdminBar { %hash = ( $session{page}{url}.'?'=>WebGUI::International::get(82), $session{page}{url}.'?op=switchOffAdmin'=>WebGUI::International::get(12), $session{page}{url}.'?op=viewHelpIndex'=>WebGUI::International::get(13), - $session{page}{url}.'?op=viewPendingSubmissions'=>WebGUI::International::get(14), %hash ); $adminSelect = WebGUI::Form::selectList("adminSelect",\%hash,"","","","goAdmin()"); diff --git a/lib/WebGUI/Discussion.pm b/lib/WebGUI/Discussion.pm new file mode 100644 index 000000000..e55aa841e --- /dev/null +++ b/lib/WebGUI/Discussion.pm @@ -0,0 +1,172 @@ +package WebGUI::Discussion; + +#------------------------------------------------------------------- +# WebGUI is Copyright 2001 Plain Black Software. +#------------------------------------------------------------------- +# Please read the legal notices (docs/legal.txt) and the license +# (docs/license.txt) that came with this distribution before using +# this software. +#------------------------------------------------------------------- +# http://www.plainblack.com info@plainblack.com +#------------------------------------------------------------------- + +use strict; +use Tie::CPHash; +use WebGUI::DateTime; +use WebGUI::International; +use WebGUI::Session; +use WebGUI::SQL; +use WebGUI::Utility; + +#------------------------------------------------------------------- +sub traverseReplyTree { + my ($sth, @data, $html, $depth, $i); + for ($i=0;$i<=$_[1];$i++) { + $depth .= "  "; + } + $sth = WebGUI::SQL->read("select messageId,subject,username,dateOfPost,userId from discussion where pid=$_[0] order by messageId", $session{dbh}); + while (@data = $sth->array) { + $html .= ''.substr($data[1],0,30).''.$data[2].''.epochToHuman($data[3],"%M/%D %H:%n%p").''; + $html .= traverseReplyTree($data[0],$_[1]+1); + } + $sth->finish; + return $html; +} + +#------------------------------------------------------------------- +sub editMessage { + my ($html, %message); + tie %message, 'Tie::CPHash'; + %message = getMessage($session{form}{mid}); + $html = '

'.WebGUI::International::get(228).'

'; + $html .= '
'; + $html .= WebGUI::Form::hidden("func","editMessageSave"); + $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); + $html .= WebGUI::Form::hidden("sid",$session{form}{sid}); + $html .= WebGUI::Form::hidden("mid",$session{form}{mid}); + $html .= ''; + $html .= ''; + $html .= ''; + $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255,$message{subject}).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",$message{message},50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; + $html .= showMessage(); + return $html; +} + +#------------------------------------------------------------------- +sub editMessageSave { + if ($session{form}{subject} eq "") { + $session{form}{subject} = WebGUI::International::get(232); + } + if ($session{form}{message} eq "") { + $session{form}{subject} .= ' '.WebGUI::International::get(233); + } + WebGUI::SQL->write("update discussion set subject=".quote($session{form}{subject}).", message=".quote("\n --- (Edited at ".localtime(time)." by $session{user}{username}) --- \n\n".$session{form}{message}).", subId='$session{form}{sid}' where messageId=$session{form}{mid}",$session{dbh}); + return showMessage(); +} + +#------------------------------------------------------------------- +sub getMessage { + my (%message); + tie %message, 'Tie::CPHash'; + %message = WebGUI::SQL->quickHash("select * from discussion where messageId=$_[0]",$session{dbh}); + $message{message} =~ s/\n/\/g; + return %message; +} + +#------------------------------------------------------------------- +sub postNewMessage { + my ($html); + $html = '

'.WebGUI::International::get(231).'

'; + $html .= '
'; + $html .= WebGUI::Form::hidden("func","postNewMessageSave"); + $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); + $html .= WebGUI::Form::hidden("sid",$session{form}{sid}); + $html .= ''; + $html .= ''; + $html .= ''; + $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",'',50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; + return $html; +} + +#------------------------------------------------------------------- +sub postNewMessageSave { + my ($mid); + if ($session{form}{subject} eq "") { + $session{form}{subject} = WebGUI::International::get(232); + } + if ($session{form}{message} eq "") { + $session{form}{subject} .= ' '.WebGUI::International::get(233); + } + $mid = getNextId("messageId"); + WebGUI::SQL->write("insert into discussion values ($mid, $mid, $session{form}{wid}, 0, $session{user}{userId}, ".quote($session{user}{username}).", ".quote($session{form}{subject}).", ".quote($session{form}{message}).", ".time().", '$session{form}{sid}')",$session{dbh}); + return ""; +} + +#------------------------------------------------------------------- +sub postReply { + my ($html, $subject); + ($subject) = WebGUI::SQL->quickArray("select subject from discussion where messageId=$session{form}{mid}", $session{dbh}); + $subject = "Re: ".$subject; + $html = '

'.WebGUI::International::get(234).'

'; + $html .= '
'; + $html .= WebGUI::Form::hidden("func","postReplySave"); + $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); + $html .= WebGUI::Form::hidden("sid",$session{form}{sid}); + $html .= WebGUI::Form::hidden("mid",$session{form}{mid}); + $html .= ''; + $html .= ''; + $html .= ''; + $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255,$subject).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",'',50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; + $html .= showMessage(); + return $html; +} + +#------------------------------------------------------------------- +sub postReplySave { + my ($rid, $mid); + if ($session{form}{subject} eq "") { + $session{form}{subject} = WebGUI::International::get(232); + } + if ($session{form}{message} eq "") { + $session{form}{subject} .= ' '.WebGUI::International::get(233); + } + $mid = getNextId("messageId"); + ($rid) = WebGUI::SQL->quickArray("select rid from discussion where messageId=$session{form}{mid}",$session{dbh}); + WebGUI::SQL->write("insert into discussion values ($mid, $rid, $session{form}{wid}, $session{form}{mid}, $session{user}{userId}, ".quote($session{user}{username}).", ".quote($session{form}{subject}).", ".quote($session{form}{message}).", ".time().", '$session{form}{sid}')", $session{dbh}); + return ""; +} + +#------------------------------------------------------------------- +sub showMessage { + my ($html, %message); + tie %message, 'Tie::CPHash'; + %message = getMessage($session{form}{mid}); + $html = '
'; + $html .= ''.WebGUI::International::get(237).''.$message{subject}.'
'; + $html .= ''.WebGUI::International::get(238).' '.$message{username}.'
'; + $html .= "".WebGUI::International::get(239)." ".epochToHuman($message{dateOfPost},"%w, %c %D, %y at %H:%n%p")."
"; + $html .= "".WebGUI::International::get(240)." ".$message{widgetId}."-".$message{rid}."-".$message{pid}."-".$message{messageId}."
"; + $html .= '
'; + $html .= $message{message}; + $html .= '
'; + return $html; +} + +#------------------------------------------------------------------- +sub showReplyTree { + my (@data, $html, %message); + tie %message, 'Tie::CPHash'; + %message = getMessage($session{form}{mid}); + $html .= ''; + $html .= ''; + $html .= traverseReplyTree($message{rid},0); + $html .= "
'.WebGUI::International::get(229).''.WebGUI::International::get(244).''.WebGUI::International::get(245).'
"; + return $html; +} + + +1; diff --git a/lib/WebGUI/Macro.pm b/lib/WebGUI/Macro.pm index 871dff68f..0eea272cb 100644 --- a/lib/WebGUI/Macro.pm +++ b/lib/WebGUI/Macro.pm @@ -14,6 +14,20 @@ use strict qw(vars subs); use WebGUI::ErrorHandler; use WebGUI::Session; +#------------------------------------------------------------------- +sub getParams { + my ($data, @param); + $data = $_[0]; + $data = substr($data,1,length($data)-2); + push(@param, $+) while $data =~ m { + "([^\"\\]*(?:\\.[^\"\\]*)*)",? + | ([^,]+),? + | , + }gx; + push(@param, undef) if substr($data,-1,1) eq ','; + return @param; +} + #------------------------------------------------------------------- sub process { my (@files, $file, $cmd, $output, $macroDir); @@ -37,6 +51,7 @@ sub process { closedir(DIR); #---script url--- # slash has to go last because it is also used as the end character for configurable widgets + # this will disappear in a future rev as it is depricated if ($output =~ /\^\//) { $output =~ s/\^\//$session{env}{SCRIPT_NAME}/g; } diff --git a/lib/WebGUI/Macro/At_username.pm b/lib/WebGUI/Macro/At_username.pm index c58564a49..0112d743f 100644 --- a/lib/WebGUI/Macro/At_username.pm +++ b/lib/WebGUI/Macro/At_username.pm @@ -17,7 +17,10 @@ use WebGUI::Session; sub process { my ($output); $output = $_[0]; - #---username--- + while ($output =~ /\^\@(.*?)\;/) { + $output =~ s/\^\@(.*?)\;/$session{user}{username}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^\@/) { $output =~ s/\^\@/$session{user}{username}/g; } diff --git a/lib/WebGUI/Macro/Backslash_pageUrl.pm b/lib/WebGUI/Macro/Backslash_pageUrl.pm index 49f03ee32..d292bff77 100644 --- a/lib/WebGUI/Macro/Backslash_pageUrl.pm +++ b/lib/WebGUI/Macro/Backslash_pageUrl.pm @@ -17,7 +17,10 @@ use WebGUI::Session; sub process { my ($output); $output = $_[0]; - #---page url--- + while ($output =~ /\^\\(.*?)\;/) { + $output =~ s/\^\\(.*?)\;/$session{page}{url}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^\\/) { $output =~ s/\^\\/$session{page}{url}/g; } diff --git a/lib/WebGUI/Macro/C_crumbTrail.pm b/lib/WebGUI/Macro/C_crumbTrail.pm index a8bd6ca8f..51eb4b0fa 100644 --- a/lib/WebGUI/Macro/C_crumbTrail.pm +++ b/lib/WebGUI/Macro/C_crumbTrail.pm @@ -35,7 +35,11 @@ sub _recurseCrumbTrail { sub process { my ($output, $temp); $output = $_[0]; - #---crumb trail--- + while ($output =~ /\^C(.*?)\;/) { + $temp = ''._recurseCrumbTrail($session{page}{parentId}).''.$session{page}{title}.''; + $output =~ s/\^C(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^C/) { $temp = ''._recurseCrumbTrail($session{page}{parentId}).''.$session{page}{title}.''; $output =~ s/\^C/$temp/g; diff --git a/lib/WebGUI/Macro/Carat_carat.pm b/lib/WebGUI/Macro/Carat_carat.pm deleted file mode 100644 index 411269e0a..000000000 --- a/lib/WebGUI/Macro/Carat_carat.pm +++ /dev/null @@ -1,27 +0,0 @@ -package WebGUI::Macro::Carat_carat; - -#------------------------------------------------------------------- -# WebGUI is Copyright 2001 Plain Black Software. -#------------------------------------------------------------------- -# Please read the legal notices (docs/legal.txt) and the license -# (docs/license.txt) that came with this distribution before using -# this software. -#------------------------------------------------------------------- -# http://www.plainblack.com info@plainblack.com -#------------------------------------------------------------------- - -use strict; - -sub process { - my ($output); - $output = $_[0]; - #---carrot ^--- - if ($output =~ /\^\^/) { - $output =~ s/\^\^/\^/g; - } - return $output; -} - - - -1; diff --git a/lib/WebGUI/Macro/D_date.pm b/lib/WebGUI/Macro/D_date.pm index 8cf0d55bb..b78173ba9 100644 --- a/lib/WebGUI/Macro/D_date.pm +++ b/lib/WebGUI/Macro/D_date.pm @@ -12,12 +12,22 @@ package WebGUI::Macro::D_date; use strict; use WebGUI::DateTime; +use WebGUI::Macro; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---date--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^D(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + if ($param[0] ne "") { + $temp = epochToHuman(time(),$param[0]); + } else { + $temp = localtime(time()); + } + $output =~ s/\^D(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^D(.*)\^\/D/) { $temp = epochToHuman(time(),$1); $output =~ s/\^D(.*)\^\/D/$temp/g; diff --git a/lib/WebGUI/Macro/H_homeLink.pm b/lib/WebGUI/Macro/H_homeLink.pm index 49a44857a..cb3b57baf 100644 --- a/lib/WebGUI/Macro/H_homeLink.pm +++ b/lib/WebGUI/Macro/H_homeLink.pm @@ -12,13 +12,25 @@ package WebGUI::Macro::H_homeLink; use strict; use WebGUI::International; +use WebGUI::Macro; use WebGUI::Session; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---home link--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^H(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = ''; + if ($param[0] ne "") { + $temp .= $param[0]; + } else { + $temp .= WebGUI::International::get(47); + } + $temp .= ''; + $output =~ s/\^H(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^H(.*)\^\/H/) { $temp = ''.$1.''; $output =~ s/\^H(.*)\^\/H/$temp/g; diff --git a/lib/WebGUI/Macro/Hash_userId.pm b/lib/WebGUI/Macro/Hash_userId.pm index 7f949677d..eb5e934eb 100644 --- a/lib/WebGUI/Macro/Hash_userId.pm +++ b/lib/WebGUI/Macro/Hash_userId.pm @@ -16,8 +16,11 @@ use WebGUI::Session; #------------------------------------------------------------------- sub process { my ($output); - #---uid--- $output = $_[0]; + while ($output =~ /\^\#(.*?)\;/) { + $output =~ s/\^\#(.*?)\;/$session{user}{userId}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^\#/) { $output =~ s/\^\#/$session{user}{userId}/g; } diff --git a/lib/WebGUI/Macro/L_loginBox.pm b/lib/WebGUI/Macro/L_loginBox.pm index 302758f71..80fcb7a03 100644 --- a/lib/WebGUI/Macro/L_loginBox.pm +++ b/lib/WebGUI/Macro/L_loginBox.pm @@ -20,7 +20,30 @@ use WebGUI::Session; sub process { my ($output, $temp); $output = $_[0]; - #---login box--- + while ($output =~ /\^L(.*?)\;/) { + $temp = '
'; + if ($session{var}{sessionId}) { + $temp .= WebGUI::International::get(48); + $temp .= ' '.$session{user}{username}.'. '; + $temp .= WebGUI::International::get(49); + $temp = WebGUI::Macro::Backslash_pageUrl::process($temp); + } else { + $temp .= '
'; + $temp .= WebGUI::Form::hidden("op","login").''; + $temp .= WebGUI::International::get(50); + $temp .= '
'; + $temp .= WebGUI::Form::text("username",12,30).'
'; + $temp .= WebGUI::International::get(51); + $temp .= '
'; + $temp .= WebGUI::Form::password("identifier",12,30).'
'; + $temp .= WebGUI::Form::submit(WebGUI::International::get(52)); + $temp .= '
'; + $temp .= 'Click here to register.'; + } + $temp .= '
'; + $output =~ s/\^L(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^L/) { $temp = '
'; if ($session{var}{sessionId}) { diff --git a/lib/WebGUI/Macro/M_currentMenuVertical.pm b/lib/WebGUI/Macro/M_currentMenuVertical.pm index 2b457929f..4cbfc9943 100644 --- a/lib/WebGUI/Macro/M_currentMenuVertical.pm +++ b/lib/WebGUI/Macro/M_currentMenuVertical.pm @@ -11,14 +11,26 @@ package WebGUI::Macro::M_currentMenuVertical; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Macro::Shared; use WebGUI::Session; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---current menu vertical--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^M(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = ''; + if ($param[0] ne "") { + $temp .= traversePageTree($session{page}{pageId},0,$param[0]); + } else { + $temp .= traversePageTree($session{page}{pageId},0,1); + } + $temp .= ''; + $output =~ s/\^M(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^M(.*)\^\/M/) { $temp = ''; $temp .= traversePageTree($session{page}{pageId},0,$1); diff --git a/lib/WebGUI/Macro/P_previousMenuVertical.pm b/lib/WebGUI/Macro/P_previousMenuVertical.pm index 56afe9b56..38b449066 100644 --- a/lib/WebGUI/Macro/P_previousMenuVertical.pm +++ b/lib/WebGUI/Macro/P_previousMenuVertical.pm @@ -11,14 +11,26 @@ package WebGUI::Macro::P_previousMenuVertical; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Macro::Shared; use WebGUI::Session; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---previous menu vertical--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^P(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = ''; + if ($param[0] ne "") { + $temp .= traversePageTree($session{page}{parentId},0,$param[0]); + } else { + $temp .= traversePageTree($session{page}{parentId},0,1); + } + $temp .= ''; + $output =~ s/\^P(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^P(.*)\^\/P/) { $temp = ''; $temp .= traversePageTree($session{page}{parentId},0,$1); diff --git a/lib/WebGUI/Macro/S_specificMenuVertical.pm b/lib/WebGUI/Macro/S_specificMenuVertical.pm index 0c29db887..4e6e5fe7c 100644 --- a/lib/WebGUI/Macro/S_specificMenuVertical.pm +++ b/lib/WebGUI/Macro/S_specificMenuVertical.pm @@ -11,6 +11,7 @@ package WebGUI::Macro::S_specificMenuVertical; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Macro::Shared; use WebGUI::Privilege; use WebGUI::Session; @@ -18,9 +19,23 @@ use WebGUI::SQL; #------------------------------------------------------------------- sub process { - my ($output, $temp, $pageTitle, $depth, @data); - $output = $_[0]; - #---any page sub menu vertical--- + my ($output, $temp, @param, @data); + $output = $_[0]; + while ($output =~ /\^S(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + if ($param[1] eq "") { + $param[1] = 0; + } + @data = WebGUI::SQL->quickArray("select pageId,title,urlizedTitle from page where urlizedTitle='$param[0]'",$session{dbh}); + $temp = ''; + if (defined $data[0] && WebGUI::Privilege::canViewPage($data[0])) { + $temp .= traversePageTree($data[0],1,$param[1]); + } + $temp .= ''; + $output =~ s/\^S(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. + my ($pageTitle, $depth); if ($output =~ /\^S(.*)\^\/S/) { ($pageTitle,$depth) = split(/,/,$1); if ($depth eq "") { @@ -29,7 +44,6 @@ sub process { @data = WebGUI::SQL->quickArray("select pageId,title,urlizedTitle from page where urlizedTitle='$pageTitle'",$session{dbh}); $temp = ''; if (defined $data[0] && WebGUI::Privilege::canViewPage($data[0])) { - #$temp .= ''.$data[1].'
'; $temp .= traversePageTree($data[0],1,$depth); } $temp .= '
'; diff --git a/lib/WebGUI/Macro/Splat_random.pm b/lib/WebGUI/Macro/Splat_random.pm index 0236392e3..255d0e249 100644 --- a/lib/WebGUI/Macro/Splat_random.pm +++ b/lib/WebGUI/Macro/Splat_random.pm @@ -11,13 +11,23 @@ package WebGUI::Macro::Splat_random; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Utility; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---random number--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^\*(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + if ($param[0] ne "") { + $temp = round(rand()*$1); + } else { + $temp = round(rand()*1000000000); + } + $output =~ s/\^\*(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^\*(.*)\^\/\*/) { $temp = round(rand()*$1); $output =~ s/\^\*(.*)\^\/\*/$temp/g; diff --git a/lib/WebGUI/Macro/T_topMenuVertical.pm b/lib/WebGUI/Macro/T_topMenuVertical.pm index dff2f9f8d..5a0310f5a 100644 --- a/lib/WebGUI/Macro/T_topMenuVertical.pm +++ b/lib/WebGUI/Macro/T_topMenuVertical.pm @@ -11,13 +11,25 @@ package WebGUI::Macro::T_topMenuVertical; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Macro::Shared; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---top menu vertical--- + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^T(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = ''; + if ($param[0] ne "") { + $temp .= traversePageTree(1,0,$param[0]); + } else { + $temp .= traversePageTree(1,0,1); + } + $temp .= ''; + $output =~ s/\^T(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^T(.*)\^\/T/) { $temp = ''; $temp .= traversePageTree(1,0,$1); diff --git a/lib/WebGUI/Macro/a_account.pm b/lib/WebGUI/Macro/a_account.pm index d191c1f15..7f42cc5e2 100644 --- a/lib/WebGUI/Macro/a_account.pm +++ b/lib/WebGUI/Macro/a_account.pm @@ -12,13 +12,25 @@ package WebGUI::Macro::a_account; use strict; use WebGUI::International; +use WebGUI::Macro; use WebGUI::Session; #------------------------------------------------------------------- sub process { - my ($output, $temp); + my ($output, $temp, @param); $output = $_[0]; - #---account link--- + while ($output =~ /\^a(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = ''; + if ($param[0] ne "") { + $temp .= $param[0]; + } else { + $temp .= WebGUI::International::get(46); + } + $temp .= ''; + $output =~ s/\^a(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^a(.*)\^\/a/) { $temp = ''.$1.''; $output =~ s/\^a(.*)\^\/a/$temp/g; diff --git a/lib/WebGUI/Macro/c_companyName.pm b/lib/WebGUI/Macro/c_companyName.pm index 3c0aa05fd..aeb59d765 100644 --- a/lib/WebGUI/Macro/c_companyName.pm +++ b/lib/WebGUI/Macro/c_companyName.pm @@ -17,7 +17,10 @@ use WebGUI::Session; sub process { my ($output); $output = $_[0]; - #---company name--- + while ($output =~ /\^c(.*?)\;/) { + $output =~ s/\^c(.*?)\;/$session{setting}{companyName}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^c/) { $output =~ s/\^c/$session{setting}{companyName}/g; } diff --git a/lib/WebGUI/Macro/e_companyEmail.pm b/lib/WebGUI/Macro/e_companyEmail.pm index af295d08f..6a04119a7 100644 --- a/lib/WebGUI/Macro/e_companyEmail.pm +++ b/lib/WebGUI/Macro/e_companyEmail.pm @@ -17,7 +17,10 @@ use WebGUI::Session; sub process { my ($output); $output = $_[0]; - #---company email--- + while ($output =~ /\^e(.*?)\;/) { + $output =~ s/\^e(.*?)\;/$session{setting}{companyEmail}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^e/) { $output =~ s/\^e/$session{setting}{companyEmail}/g; } diff --git a/lib/WebGUI/Macro/m_currentMenuHorizontal.pm b/lib/WebGUI/Macro/m_currentMenuHorizontal.pm index 7c32c3e90..dce3fa188 100644 --- a/lib/WebGUI/Macro/m_currentMenuHorizontal.pm +++ b/lib/WebGUI/Macro/m_currentMenuHorizontal.pm @@ -19,7 +19,25 @@ use WebGUI::SQL; sub process { my ($output, $temp, @data, $sth, $first); $output = $_[0]; - #---current menu horizontal --- + while ($output =~ /\^m(.*?)\;/) { + $temp = ''; + $first = 1; + $sth = WebGUI::SQL->read("select title,urlizedTitle,pageId from page where parentId=$session{page}{pageId} order by sequenceNumber",$session{dbh}); + while (@data = $sth->array) { + if (WebGUI::Privilege::canViewPage($data[2])) { + if ($first) { + $first = 0; + } else { + $temp .= " · "; + } + $temp .= ''.$data[0].''; + } + } + $sth->finish; + $temp .= ''; + $output =~ s/\^m(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^m/) { $temp = ''; $first = 1; diff --git a/lib/WebGUI/Macro/p_previousMenuHorizontal.pm b/lib/WebGUI/Macro/p_previousMenuHorizontal.pm index 1a5d74ec0..3035c0389 100644 --- a/lib/WebGUI/Macro/p_previousMenuHorizontal.pm +++ b/lib/WebGUI/Macro/p_previousMenuHorizontal.pm @@ -11,6 +11,7 @@ package WebGUI::Macro::p_previousMenuHorizontal; #------------------------------------------------------------------- use strict; +use WebGUI::Macro; use WebGUI::Privilege; use WebGUI::Session; use WebGUI::SQL; @@ -19,7 +20,25 @@ use WebGUI::SQL; sub process { my ($output, $temp, @data, $sth, $first); $output = $_[0]; - #---previous menu horizontal --- + while ($output =~ /\^p(.*?)\;/) { + $temp = ''; + $first = 1; + $sth = WebGUI::SQL->read("select title,urlizedTitle,pageId from page where parentId=$session{page}{parentId} order by sequenceNumber",$session{dbh}); + while (@data = $sth->array) { + if (WebGUI::Privilege::canViewPage($data[2])) { + if ($first) { + $first = 0; + } else { + $temp .= " · "; + } + $temp .= ''.$data[0].''; + } + } + $sth->finish; + $temp .= ''; + $output =~ s/\^p(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^p/) { $temp = ''; $first = 1; diff --git a/lib/WebGUI/Macro/r_printable.pm b/lib/WebGUI/Macro/r_printable.pm index 4c2ae1491..55d3a2fc7 100644 --- a/lib/WebGUI/Macro/r_printable.pm +++ b/lib/WebGUI/Macro/r_printable.pm @@ -12,30 +12,34 @@ package WebGUI::Macro::r_printable; use strict; use WebGUI::International; +use WebGUI::Macro; use WebGUI::Session; +use WebGUI::Utility; #------------------------------------------------------------------- sub process { - my ($output, $temp); - $output = $_[0]; - #---remove style for printing link--- - if ($output =~ /\^r(.*)\^\/r/) { - $temp = $session{env}{REQUEST_URI}; - if ($temp =~ /\?/) { - $temp .= '&makePrintable=1'; + my ($output, $temp, @param); + $output = $_[0]; + while ($output =~ /\^r(.*?)\;/) { + @param = WebGUI::Macro::getParams($1); + $temp = appendToUrl($session{env}{REQUEST_URI},'makePrintable=1'); + $temp = ''; + if ($param[0] ne "") { + $temp .= $param[0]; } else { - $temp .= '?makePrintable=1'; + $temp .= WebGUI::International::get(53); } - $temp = ''.$1.''; + $temp .= ''; + $output =~ s/\^r(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. + if ($output =~ /\^r(.*)\^\/r/) { + $temp = appendToUrl($session{env}{REQUEST_URI},'makePrintable=1'); + $temp = ''.$1.''; $output =~ s/\^r(.*)\^\/r/$temp/g; } elsif ($output =~ /\^r/) { - $temp = $session{env}{REQUEST_URI}; - if ($temp =~ /\?/) { - $temp .= '&makePrintable=1'; - } else { - $temp .= '?makePrintable=1'; - } - $temp = ''; + $temp = appendToUrl($session{env}{REQUEST_URI},'makePrintable=1'); + $temp = ''; $temp .= WebGUI::International::get(53); $temp .= ''; $output =~ s/\^r/$temp/g; diff --git a/lib/WebGUI/Macro/s_specificMenuHorizontal.pm b/lib/WebGUI/Macro/s_specificMenuHorizontal.pm index f7dfa06d6..084d89d8e 100644 --- a/lib/WebGUI/Macro/s_specificMenuHorizontal.pm +++ b/lib/WebGUI/Macro/s_specificMenuHorizontal.pm @@ -20,7 +20,27 @@ use WebGUI::SQL; sub process { my ($output, $temp, @data, $pageTitle, $parentId, $sth, $first); $output = $_[0]; - #---any page sub menu vertical--- + while ($output =~ /\^s(.*?)\;/) { + $pageTitle = $1; + $temp = ''; + $first = 1; + ($parentId) = WebGUI::SQL->quickArray("select pageId from page where urlizedTitle='$pageTitle'",$session{dbh}); + $sth = WebGUI::SQL->read("select title,urlizedTitle,pageId from page where parentId='$parentId' order by sequenceNumber",$session{dbh}); + while (@data = $sth->array) { + if (WebGUI::Privilege::canViewPage($data[2])) { + if ($first) { + $first = 0; + } else { + $temp .= " · "; + } + $temp .= ''.$data[0].''; + } + } + $sth->finish; + $temp .= ''; + $output =~ s/\^s(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^s(.*)\^\/s/) { $pageTitle = $1; $temp = ''; diff --git a/lib/WebGUI/Macro/t_topMenuHorizontal.pm b/lib/WebGUI/Macro/t_topMenuHorizontal.pm index 0a8ca5ffe..ecfd8f67d 100644 --- a/lib/WebGUI/Macro/t_topMenuHorizontal.pm +++ b/lib/WebGUI/Macro/t_topMenuHorizontal.pm @@ -19,7 +19,25 @@ use WebGUI::SQL; sub process { my ($output, $temp, @data, $sth, $first); $output = $_[0]; - #---top menu horizontal--- + while ($output =~ /\^t(.*?)\;/) { + $temp = ''; + $first = 1; + $sth = WebGUI::SQL->read("select title,urlizedTitle,pageId from page where parentId=1 order by sequenceNumber",$session{dbh}); + while (@data = $sth->array) { + if (WebGUI::Privilege::canViewPage($data[2])) { + if ($first) { + $first = 0; + } else { + $temp .= " · "; + } + $temp .= ''.$data[0].''; + } + } + $sth->finish; + $temp .= ''; + $output =~ s/\^t(.*?)\;/$temp/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^t/) { $temp = ''; $first = 1; diff --git a/lib/WebGUI/Macro/u_companyUrl.pm b/lib/WebGUI/Macro/u_companyUrl.pm index 2796fb76d..0867cbf57 100644 --- a/lib/WebGUI/Macro/u_companyUrl.pm +++ b/lib/WebGUI/Macro/u_companyUrl.pm @@ -17,7 +17,10 @@ use WebGUI::Session; sub process { my ($output, $temp, @data, $sth, $first); $output = $_[0]; - #---company URL--- + while ($output =~ /\^u(.*?)\;/) { + $output =~ s/\^u(.*?)\;/$session{setting}{companyURL}/; + } + #---everything below this line will go away in a later rev. if ($output =~ /\^u/) { $output =~ s/\^u/$session{setting}{companyURL}/g; } diff --git a/lib/WebGUI/MessageLog.pm b/lib/WebGUI/MessageLog.pm new file mode 100644 index 000000000..1e7ed56df --- /dev/null +++ b/lib/WebGUI/MessageLog.pm @@ -0,0 +1,48 @@ +package WebGUI::MessageLog; + +#------------------------------------------------------------------- +# WebGUI is Copyright 2001 Plain Black Software. +#------------------------------------------------------------------- +# Please read the legal notices (docs/legal.txt) and the license +# (docs/license.txt) that came with this distribution before using +# this software. +#------------------------------------------------------------------- +# http://www.plainblack.com info@plainblack.com +#------------------------------------------------------------------- + +use strict; +use WebGUI::Session; +use WebGUI::Utility; + +#------------------------------------------------------------------- +sub addEntry { + my ($user, %userLanguage, $messageLogId, %message); + $messageLogId = getNextId("messageLogId"); + if ($_[0] ne "") { + ($userLanguage{$_[0]}) = WebGUI::SQL->quickArray("select language from users where userId=$_[0]",$session{dbh}); + } + if ($_[1] ne "") { + %userLanguage = (WebGUI::SQL->buildHash("select users.userId,users.language from groupings,users where groupings.groupId=$_[1] and groupings.userId=users.userId",$session{dbh}),%userLanguage); + } + %message = WebGUI::SQL->buildHash("select language,message from international where internationalId=$_[3] and namespace='$_[4]'",$session{dbh}); + foreach $user (keys %userLanguage) { + WebGUI::SQL->write("insert into messageLog values ($messageLogId,$user,".quote($message{$userLanguage{$user}}).",".quote($_[2]).",".time().")",$session{dbh}); + # here is where we'll trigger communication with external systems like email + } +} + +#------------------------------------------------------------------- +sub completeEntry { + my ($sth, @data, $completeMessage); + $completeMessage = WebGUI::International::get(350); + # unfortunately had to loop through reading and writing because I couldn't + # find a concatination function that worked the same in all DB servers + $sth = WebGUI::SQL->read("select message,userId from messageLog where messageLogId=$_[0]",$session{dbh}); + while (@data = $sth->array) { + WebGUI::SQL->write("update messageLog set message=".quote($completeMessage.": ".$data[0]).", dateOfEntry=".time()." where messageLogId='$_[0]' and userId=$data[1]",$session{dbh}); + } + $sth->finish; +} + + +1; diff --git a/lib/WebGUI/Operation.pm b/lib/WebGUI/Operation.pm index 81a8eaa14..d9db2b20a 100644 --- a/lib/WebGUI/Operation.pm +++ b/lib/WebGUI/Operation.pm @@ -19,7 +19,6 @@ use WebGUI::Operation::Page; use WebGUI::Operation::Settings; use WebGUI::Operation::Statistics; use WebGUI::Operation::Style; -use WebGUI::Operation::Submission; use WebGUI::Operation::Trash; use WebGUI::Operation::User; diff --git a/lib/WebGUI/Operation/Account.pm b/lib/WebGUI/Operation/Account.pm index 09f26abed..01b347834 100644 --- a/lib/WebGUI/Operation/Account.pm +++ b/lib/WebGUI/Operation/Account.pm @@ -26,9 +26,30 @@ use WebGUI::SQL; use WebGUI::Utility; our @ISA = qw(Exporter); -our @EXPORT = qw(&www_viewProfile &www_editProfile &www_editProfileSave &www_createAccount &www_deactivateAccount &www_deactivateAccountConfirm &www_displayAccount &www_displayLogin &www_login &www_logout &www_recoverPassword &www_recoverPasswordFinish &www_saveAccount &www_updateAccount); +our @EXPORT = qw(&www_viewMessageLog &www_viewProfile &www_editProfile &www_editProfileSave &www_createAccount &www_deactivateAccount &www_deactivateAccountConfirm &www_displayAccount &www_displayLogin &www_login &www_logout &www_recoverPassword &www_recoverPasswordFinish &www_saveAccount &www_updateAccount); our %ldapStatusCode = ( 0=>'success (0)', 1=>'Operations Error (1)', 2=>'Protocol Error (2)', 3=>'Time Limit Exceeded (3)', 4=>'Size Limit Exceeded (4)', 5=>'Compare False (5)', 6=>'Compare True (6)', 7=>'Auth Method Not Supported (7)', 8=>'Strong Auth Required (8)', 9=>'Referral (10)', 11=>'Admin Limit Exceeded (11)', 12=>'Unavailable Critical Extension (12)', 13=>'Confidentiality Required (13)', 14=>'Sasl Bind In Progress (14)', 15=>'No Such Attribute (16)', 17=>'Undefined Attribute Type (17)', 18=>'Inappropriate Matching (18)', 19=>'Constraint Violation (19)', 20=>'Attribute Or Value Exists (20)', 21=>'Invalid Attribute Syntax (21)', 32=>'No Such Object (32)', 33=>'Alias Problem (33)', 34=>'Invalid DN Syntax (34)', 36=>'Alias Dereferencing Problem (36)', 48=>'Inappropriate Authentication (48)', 49=>'Invalid Credentials (49)', 50=>'Insufficient Access Rights (50)', 51=>'Busy (51)', 52=>'Unavailable (52)', 53=>'Unwilling To Perform (53)', 54=>'Loop Detect (54)', 64=>'Naming Violation (64)', 65=>'Object Class Violation (65)', 66=>'Not Allowed On Non Leaf (66)', 67=>'Not Allowed On RDN (67)', 68=>'Entry Already Exists (68)', 69=>'Object Class Mods Prohibited (69)', 71=>'Affects Multiple DSAs (71)', 80=>'other (80)'); +#------------------------------------------------------------------- +sub _accountOptions { + my ($output); + $output = '
'; + return $output; +} + #------------------------------------------------------------------- sub _hasBadPassword { if ($_[0] ne $_[1] || $_[0] eq "") { @@ -157,18 +178,7 @@ sub www_displayAccount { $output .= ''.WebGUI::Form::submit(WebGUI::International::get(62)).''; $output .= ''; $output .= ' '; - $output .= '
'; + $output .= _accountOptions(); } else { $output .= www_displayLogin(); } @@ -250,19 +260,7 @@ sub www_editProfile { $output .= ''.WebGUI::Form::submit(WebGUI::International::get(62)).''; $output .= ''; $output .= ''; - $output .= '
'; + $output .= _accountOptions(); } else { $output .= www_displayLogin(); } @@ -406,18 +404,23 @@ sub www_saveAccount { $ldap = Net::LDAP->new($uri->host, %args) or $error .= WebGUI::International::get(79); $ldap->bind; $search = $ldap->search (base => $uri->dn, filter => $session{setting}{ldapId}."=".$session{form}{ldapId}); - $connectDN = "cn=".$search->entry(0)->get_value("cn"); - $ldap->unbind; - $ldap = Net::LDAP->new($uri->host, %args) or $error .= WebGUI::International::get(79); - $auth = $ldap->bind(dn=>$connectDN, password=>$session{form}{ldapPassword}); - if ($auth->code == 48 || $auth->code == 49) { + if (defined $search->entry(0)) { + $connectDN = "cn=".$search->entry(0)->get_value("cn"); + $ldap->unbind; + $ldap = Net::LDAP->new($uri->host, %args) or $error .= WebGUI::International::get(79); + $auth = $ldap->bind(dn=>$connectDN, password=>$session{form}{ldapPassword}); + if ($auth->code == 48 || $auth->code == 49) { + $error .= WebGUI::International::get(68); + WebGUI::ErrorHandler::warn("Invalid LDAP information for registration of LDAP ID: ".$session{form}{ldapId}); + } elsif ($auth->code > 0) { + $error .= 'LDAP error "'.$ldapStatusCode{$auth->code}.'" occured. '.WebGUI::International::get(69); + WebGUI::ErrorHandler::warn("LDAP error: ".$ldapStatusCode{$auth->code}); + } + $ldap->unbind; + } else { $error .= WebGUI::International::get(68); - WebGUI::ErrorHandler::warn("Invalid LDAP information for registration of LDAP ID: ".$session{form}{ldapId}); - } elsif ($auth->code > 0) { - $error .= 'LDAP error "'.$ldapStatusCode{$auth->code}.'" occured. '.WebGUI::International::get(69); - WebGUI::ErrorHandler::warn("LDAP error: ".$ldapStatusCode{$auth->code}); + WebGUI::ErrorHandler::warn("Invalid LDAP information for registration of LDAP ID: ".$session{form}{ldapId}); } - $ldap->unbind; } if ($error eq "") { $encryptedPassword = Digest::MD5::md5_base64($session{form}{identifier1}); @@ -470,6 +473,43 @@ sub www_updateAccount { return $output; } +#------------------------------------------------------------------- +sub www_viewMessageLog { + my (@data, $output, $sth, @row, $i, $dataRows, $prevNextBar); + if (WebGUI::Privilege::isInGroup(2,$session{user}{userId})) { + $output = '

'.WebGUI::International::get(159).'

'; + $sth = WebGUI::SQL->read("select messageLogId,message,url,dateOfEntry from messageLog where userId=$session{user}{userId} order by dateOfEntry desc",$session{dbh}); + while (@data = $sth->array) { + $row[$i] = ''; + if ($data[2] ne "") { + $data[2] = appendToUrl($data[2],'mlog='.$data[0]); + $row[$i] .= ''; + } + $row[$i] .= $data[1]; + if ($data[2] ne "") { + $row[$i] .= ''; + } + $row[$i] .= ''.epochToHuman($data[3],"%m/%d/%Y").''; + $i++; + } + $sth->finish; + ($dataRows, $prevNextBar) = paginate(50,$session{page}{url}.'?op=viewMessageLog',\@row); + $output .= ''; + $output .= ''; + if ($dataRows eq "") { + $output .= ''; + } else { + $output .= $dataRows; + } + $output .= '
'.WebGUI::International::get(351).''.WebGUI::International::get(352).'
'.WebGUI::International::get(353).'
'; + $output .= $prevNextBar; + $output .= _accountOptions(); + } else { + $output = WebGUI::Privilege::insufficient(); + } + return $output; +} + #------------------------------------------------------------------- sub www_viewProfile { my ($output, %user); @@ -536,19 +576,7 @@ sub www_viewProfile { } $output .= ''; if ($session{user}{userId} == $session{form}{uid}) { - $output .= '
'; + $output .= _accountOptions(); } } else { $output .= WebGUI::Privilege::insufficient(); diff --git a/lib/WebGUI/Operation/Group.pm b/lib/WebGUI/Operation/Group.pm index 7e58af35f..b9d334f3c 100644 --- a/lib/WebGUI/Operation/Group.pm +++ b/lib/WebGUI/Operation/Group.pm @@ -127,9 +127,8 @@ sub www_editGroupSave { #------------------------------------------------------------------- sub www_listGroups { - my ($output, $pn, $sth, @data, @row, $i, $itemsPerPage); + my ($output, $dataRows, $prevNextBar, $sth, @data, @row, $i); if (WebGUI::Privilege::isInGroup(3)) { - $itemsPerPage = 50; $output = ''; $output .= '

'.WebGUI::International::get(89).'

'; $output .= ''; @@ -141,28 +140,12 @@ sub www_listGroups { $row[$i] .= ''.$data[2].''; $i++; } - if ($session{form}{pn} < 1) { - $pn = 0; - } else { - $pn = $session{form}{pn}; - } - for ($i=($itemsPerPage*$pn); $i<($itemsPerPage*($pn+1));$i++) { - $output .= $row[$i]; - } + $sth->finish; + ($dataRows, $prevNextBar) = paginate(50,$session{page}{url}.'?op=listGroups',\@row); + $output .= ''; + $output .= $dataRows; $output .= '
'; - $output .= ''; + $output .= $prevNextBar; return $output; } else { return WebGUI::Privilege::adminOnly(); diff --git a/lib/WebGUI/Operation/Style.pm b/lib/WebGUI/Operation/Style.pm index ad9a767bd..4b30d4df3 100644 --- a/lib/WebGUI/Operation/Style.pm +++ b/lib/WebGUI/Operation/Style.pm @@ -33,8 +33,8 @@ sub www_addStyle { $output .= WebGUI::Form::hidden("op","addStyleSave"); $output .= ''; $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; + $output .= ''; $output .= ''; $output .= ''; $output .= '
'.WebGUI::International::get(151).''.WebGUI::Form::text("name",20,30).'
'.WebGUI::International::get(152).''.WebGUI::Form::textArea("header",'',50,10,1).'
'.WebGUI::International::get(153).''.WebGUI::Form::textArea("footer",'',50,10,1).'
'.WebGUI::International::get(152).''.WebGUI::Form::textArea("header",'',50,10).'
'.WebGUI::International::get(153).''.WebGUI::Form::textArea("footer",'',50,10).'
'.WebGUI::International::get(154).''.WebGUI::Form::textArea("styleSheet","",50,10).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; @@ -111,8 +111,8 @@ sub www_editStyle { $output .= WebGUI::Form::hidden("sid",$session{form}{sid}); $output .= ''; $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; + $output .= ''; $output .= ''; $output .= ''; $output .= '
'.WebGUI::International::get(151).''.WebGUI::Form::text("name",20,30,$style{name}).'
'.WebGUI::International::get(152).''.WebGUI::Form::textArea("header",$style{header},50,10,1).'
'.WebGUI::International::get(153).''.WebGUI::Form::textArea("footer",$style{footer},50,10,1).'
'.WebGUI::International::get(152).''.WebGUI::Form::textArea("header",$style{header},50,10).'
'.WebGUI::International::get(153).''.WebGUI::Form::textArea("footer",$style{footer},50,10).'
'.WebGUI::International::get(154).''.WebGUI::Form::textArea("styleSheet",$style{styleSheet},50,10).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; @@ -135,41 +135,23 @@ sub www_editStyleSave { #------------------------------------------------------------------- sub www_listStyles { - my ($output, $pn, $sth, @data, @row, $i, $itemsPerPage); + my ($output, $sth, @data, @row, $i, $prevNextBar, $dataRows); if (WebGUI::Privilege::isInGroup(3)) { - $itemsPerPage = 50; $output = ''; $output .= '

'.WebGUI::International::get(157).'

'; $output .= ''; - $output .= ''; $sth = WebGUI::SQL->read("select styleId,name from style where name<>'Reserved' order by name",$session{dbh}); while (@data = $sth->array) { $row[$i] = ''; $row[$i] .= ''; $i++; } - if ($session{form}{pn} < 1) { - $pn = 0; - } else { - $pn = $session{form}{pn}; - } - for ($i=($itemsPerPage*$pn); $i<($itemsPerPage*($pn+1));$i++) { - $output .= $row[$i]; - } - $output .= '
'.$data[1].'
'; - $output .= ''; + $sth->finish; + ($dataRows, $prevNextBar) = paginate(50,$session{page}{url}.'?op=listStyles',\@row); + $output .= ''; + $output .= $dataRows; + $output .= '
'; + $output .= $prevNextBar; return $output; } else { return WebGUI::Privilege::adminOnly(); diff --git a/lib/WebGUI/Operation/Submission.pm b/lib/WebGUI/Operation/Submission.pm deleted file mode 100644 index 60ec90c28..000000000 --- a/lib/WebGUI/Operation/Submission.pm +++ /dev/null @@ -1,88 +0,0 @@ -package WebGUI::Operation::Submission; - -#------------------------------------------------------------------- -# WebGUI is Copyright 2001 Plain Black Software. -#------------------------------------------------------------------- -# Please read the legal notices (docs/legal.txt) and the license -# (docs/license.txt) that came with this distribution before using -# this software. -#------------------------------------------------------------------- -# http://www.plainblack.com info@plainblack.com -#------------------------------------------------------------------- - -use Exporter; -use strict; -use WebGUI::DateTime; -use WebGUI::International; -use WebGUI::Privilege; -use WebGUI::Session; -use WebGUI::SQL; -use WebGUI::Utility; - -our @ISA = qw(Exporter); -our @EXPORT = qw(&www_viewPendingSubmissions &www_approveSubmission &www_denySubmission); - -#------------------------------------------------------------------- -sub www_approveSubmission { - if (WebGUI::Privilege::isInGroup(4,$session{user}{userId}) || WebGUI::Privilege::isInGroup(3,$session{user}{userId})) { - WebGUI::SQL->write("update UserSubmission_submission set status='Approved' where submissionId=$session{form}{sid}",$session{dbh}); - return www_viewPendingSubmissions(); - } else { - return WebGUI::Privilege::insufficient(); - } -} - -#------------------------------------------------------------------- -sub www_denySubmission { - if (WebGUI::Privilege::isInGroup(4,$session{user}{userId}) || WebGUI::Privilege::isInGroup(3,$session{user}{userId})) { - WebGUI::SQL->write("update UserSubmission_submission set status='Denied' where submissionId=$session{form}{sid}",$session{dbh} -); - return www_viewPendingSubmissions(); - } else { - return WebGUI::Privilege::insufficient(); - } -} - -#------------------------------------------------------------------- -sub www_viewPendingSubmissions { - my (@submission, $output, $sth, @row, $i, $pn); - if (WebGUI::Privilege::isInGroup(4,$session{user}{userId}) || WebGUI::Privilege::isInGroup(3,$session{user}{userId})) { - $output = '

'.WebGUI::International::get(159).'

'; - $sth = WebGUI::SQL->read("select title,submissionId,dateSubmitted,username,userId,widgetId from UserSubmission_submission where status='Pending' order by dateSubmitted",$session{dbh}); - while (@submission = $sth->array) { - $row[$i] = ''.$submission[0].''.epochToHuman($submission[2],"%m/%d/%Y").''.$submission[3].''; - $i++; - } - $sth->finish; - $output .= ''; - $output .= ''; - if ($session{form}{pn} < 1) { - $pn = 0; - } else { - $pn = $session{form}{pn}; - } - for ($i=(50*$pn); $i<(50*($pn+1));$i++) { - $output .= $row[$i]; - } - $output .= '
'.WebGUI::International::get(99).''.WebGUI::International::get(160).''.WebGUI::International::get(161).'
'; - $output .= ''; - } else { - $output = WebGUI::Privilege::insufficient(); - } - return $output; -} - - -1; diff --git a/lib/WebGUI/Operation/User.pm b/lib/WebGUI/Operation/User.pm index 472b22415..6b85c9c88 100644 --- a/lib/WebGUI/Operation/User.pm +++ b/lib/WebGUI/Operation/User.pm @@ -81,6 +81,7 @@ sub www_becomeUser { ($password) = WebGUI::SQL->quickArray("select identifier from users where userId='$session{form}{uid}'",$session{dbh}); WebGUI::Session::end($session{var}{sessionId}); $cookieInfo = $session{form}{uid}."|".crypt($password,"yJ"); + WebGUI::Session::end($cookieInfo); WebGUI::Session::start($cookieInfo); WebGUI::Session::setCookie("wgSession",$cookieInfo); $output = ""; @@ -205,9 +206,8 @@ sub www_editUserSave { #------------------------------------------------------------------- sub www_listUsers { - my ($output, $sth, @data, @row, $pn, $i, $itemsPerPage, $search); + my ($output, $sth, @data, @row, $dataRows, $prevNextBar, $i, $search); if (WebGUI::Privilege::isInGroup(3)) { - $itemsPerPage = 50; $output = ''; $output .= '

'.WebGUI::International::get(149).'

'; $output .= ''; $output .= ''; $output .= ''; - $output .= ''; + $output .= ''; $output .= '
'; @@ -220,7 +220,6 @@ sub www_listUsers { if ($session{form}{keyword} ne "") { $search = " and (username like '%".$session{form}{keyword}."%' or email like '%".$session{form}{keyword}."%') "; } - $output .= ''; $sth = WebGUI::SQL->read("select userId,username,email from users where username<>'Reserved' $search order by username",$session{dbh}); while (@data = $sth->array) { $row[$i] = ''; $i++; } - if ($session{form}{pn} < 1) { - $pn = 0; - } else { - $pn = $session{form}{pn}; - } - for ($i=($itemsPerPage*$pn); $i<($itemsPerPage*($pn+1));$i++) { - $output .= $row[$i]; - } + $sth->finish; + ($dataRows, $prevNextBar) = paginate(50,$session{page}{url}.'?op=listUsers',\@row); + $output .= '
'; @@ -233,28 +232,12 @@ sub www_listUsers { $row[$i] .= ''.$data[2].'
'; + $output .= $dataRows; $output .= '
'; - $output .= ''; + $output .= $prevNextBar; return $output; } else { return WebGUI::Privilege::adminOnly(); diff --git a/lib/WebGUI/Utility.pm b/lib/WebGUI/Utility.pm index 6cb70f497..d55bc2e82 100644 --- a/lib/WebGUI/Utility.pm +++ b/lib/WebGUI/Utility.pm @@ -14,11 +14,24 @@ use CGI; use Exporter; use FileHandle; use strict; +use WebGUI::International; use WebGUI::Session; use WebGUI::SQL; our @ISA = qw(Exporter); -our @EXPORT = qw(&randint &getNextId &saveAttachment &round &urlize "e); +our @EXPORT = qw(&paginate &appendToUrl &randint &getNextId &saveAttachment &round &urlize "e); + +#------------------------------------------------------------------- +sub appendToUrl { + my ($url); + $url = $_[0]; + if ($url =~ /\?/) { + $url .= '&'.$_[1]; + } else { + $url .= '?'.$_[1]; + } + return $url; +} #------------------------------------------------------------------- sub getNextId { @@ -28,6 +41,36 @@ sub getNextId { return $id; } +#------------------------------------------------------------------- +sub paginate { + my ($pn, $i, $dataRows, $prevNextBar, $itemsPerPage, @row, $url); + $itemsPerPage = $_[0]; + $url = $_[1]; + @row = @{$_[2]}; + if ($session{form}{pn} < 1) { + $pn = 0; + } else { + $pn = $session{form}{pn}; + } + for ($i=($itemsPerPage*$pn); $i<($itemsPerPage*($pn+1));$i++) { + $dataRows .= $row[$i]; + } + $prevNextBar = ''; + return ($dataRows, $prevNextBar); +} + #------------------------------------------------------------------- # This is here simply to make typing shorter, cuz I'm lazy. sub quote { diff --git a/lib/WebGUI/Widget/ExtraColumn.pm b/lib/WebGUI/Widget/ExtraColumn.pm index faed8645a..9cc327620 100644 --- a/lib/WebGUI/Widget/ExtraColumn.pm +++ b/lib/WebGUI/Widget/ExtraColumn.pm @@ -83,7 +83,7 @@ sub www_edit { $output .= '
'.WebGUI::International::get(201).''.WebGUI::Form::text("spacer",20,3,$data{spacer}).'
'.WebGUI::International::get(202).''.WebGUI::Form::text("width",20,3,$data{width}).'
'.WebGUI::International::get(203).''.WebGUI::Form::text("class",20,50,$data{class}).'
'.WebGUI::Form::submit(WebGUI::International::get(204)).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; return $output; } else { diff --git a/lib/WebGUI/Widget/FAQ.pm b/lib/WebGUI/Widget/FAQ.pm index 3c31fe711..5a29258a5 100644 --- a/lib/WebGUI/Widget/FAQ.pm +++ b/lib/WebGUI/Widget/FAQ.pm @@ -96,7 +96,7 @@ sub www_addQuestion { $output .= WebGUI::Form::hidden("func","addQuestionSave"); $output .= ''; $output .= ''; - $output .= ''; + $output .= ''; $output .= ''; $output .= '
'.WebGUI::International::get(208).''.WebGUI::Form::textArea("question",'',50,3).'
'.WebGUI::International::get(209).''.WebGUI::Form::textArea("answer").'
'.WebGUI::International::get(209).''.WebGUI::Form::textArea("answer",'',50,10,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; return $output; @@ -200,7 +200,7 @@ sub www_editQuestion { $output .= WebGUI::Form::hidden("func","editQuestionSave"); $output .= ''; $output .= ''; - $output .= ''; + $output .= ''; $output .= ''; $output .= '
'.WebGUI::International::get(208).''.WebGUI::Form::textArea("question",$question{question},50,3).'
'.WebGUI::International::get(209).''.WebGUI::Form::textArea("answer",$question{answer}).'
'.WebGUI::International::get(209).''.WebGUI::Form::textArea("answer",$question{answer},50,10,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; return $output; diff --git a/lib/WebGUI/Widget/MessageBoard.pm b/lib/WebGUI/Widget/MessageBoard.pm index dae292f61..dfb4e051d 100644 --- a/lib/WebGUI/Widget/MessageBoard.pm +++ b/lib/WebGUI/Widget/MessageBoard.pm @@ -15,6 +15,7 @@ our $namespace = "MessageBoard"; use strict; use Tie::CPHash; use WebGUI::DateTime; +use WebGUI::Discussion; use WebGUI::International; use WebGUI::Macro; use WebGUI::Privilege; @@ -31,28 +32,9 @@ sub _getBoardProperties { return %board; } -#------------------------------------------------------------------- -sub _traverseReplyTree { - my ($sth, @data, $html, $depth, $i); - for ($i=0;$i<=$_[1];$i++) { - $depth .= "  "; - } - $sth = WebGUI::SQL->read("select messageId,subject,username,dateOfPost,userId from message where pid=$_[0] order by messageId", $session{dbh}); - while (@data = $sth->array) { - $html .= ''.substr($data[1],0,30).''.$data[2].''.epochToHuman($data[3],"%M/%D %H:%n%p").''; - $html .= _traverseReplyTree($data[0],$_[1]+1); - } - $sth->finish; - return $html; -} - #------------------------------------------------------------------- sub purge { - WebGUI::SQL->write("delete from message where widgetId=$_[0]",$_[1]); + WebGUI::SQL->write("delete from discussion where widgetId=$_[0]",$_[1]); WebGUI::SQL->write("delete from MessageBoard where widgetId=$_[0]",$_[1]); purgeWidget($_[0],$_[1]); } @@ -147,26 +129,14 @@ sub www_editSave { #------------------------------------------------------------------- sub www_editMessage { - my ($html, %board, %message); - tie %message, 'Tie::CPHash'; + my (%board); tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - %message = WebGUI::SQL->quickHash("select * from message where messageId=$session{form}{mid}",$session{dbh}); - $html = '

'.WebGUI::International::get(228).'

'; - $html .= '
'; - $html .= WebGUI::Form::hidden("func","editMessageSave"); - $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); - $html .= WebGUI::Form::hidden("mid",$session{form}{mid}); - $html .= ''; - $html .= ''; - $html .= ''; - $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255,$message{subject}).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",$message{message},50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; - $html .= www_showMessage(); + return WebGUI::Discussion::editMessage(); } else { - $html = WebGUI::Privilege::insufficient(); + return WebGUI::Privilege::insufficient(); } - return $html; } #------------------------------------------------------------------- @@ -175,14 +145,8 @@ sub www_editMessageSave { tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - if ($session{form}{subject} eq "") { - $session{form}{subject} = WebGUI::International::get(232); - } - if ($session{form}{message} eq "") { - $session{form}{subject} .= ' '.WebGUI::International::get(233); - } - WebGUI::SQL->write("update message set subject=".quote($session{form}{subject}).", message=".quote("\n --- (Edited at ".localtime(time).") --- \n\n".$session{form}{message})." where messageId=$session{form}{mid}",$session{dbh}); - return www_showMessage(); + WebGUI::Discussion::editMessageSave(); + return www_showMessage(); } else { return WebGUI::Privilege::insufficient(); } @@ -190,39 +154,23 @@ sub www_editMessageSave { #------------------------------------------------------------------- sub www_postNewMessage { - my ($html, %board); + my (%board); tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - $html = '

'.WebGUI::International::get(231).'

'; - $html .= '
'; - $html .= WebGUI::Form::hidden("func","postNewMessageSave"); - $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); - $html .= ''; - $html .= ''; - $html .= ''; - $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",'',50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; + return WebGUI::Discussion::postNewMessage(); } else { - $html = WebGUI::Privilege::insufficient(); + return WebGUI::Privilege::insufficient(); } - return $html; } #------------------------------------------------------------------- sub www_postNewMessageSave { - my ($mid, %board); + my (%board); tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - if ($session{form}{subject} eq "") { - $session{form}{subject} = WebGUI::International::get(232); - } - if ($session{form}{message} eq "") { - $session{form}{subject} .= ' '.WebGUI::International::get(233); - } - $mid = getNextId("messageId"); - WebGUI::SQL->write("insert into message values ($mid, $mid, $session{form}{wid}, 0, $session{user}{userId}, ".quote($session{user}{username}).", ".quote($session{form}{subject}).", ".quote($session{form}{message}).", ".time().")",$session{dbh}); - return ""; + return WebGUI::Discussion::postNewMessageSave(); } else { return WebGUI::Privilege::insufficient(); } @@ -230,43 +178,23 @@ sub www_postNewMessageSave { #------------------------------------------------------------------- sub www_postReply { - my ($html, %board, $subject); + my (%board); tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - ($subject) = WebGUI::SQL->quickArray("select subject from message where messageId=$session{form}{mid}", $session{dbh}); - $subject = "Re: ".$subject; - $html = '

'.WebGUI::International::get(234).'

'; - $html .= '
'; - $html .= WebGUI::Form::hidden("func","postReplySave"); - $html .= WebGUI::Form::hidden("wid",$session{form}{wid}); - $html .= WebGUI::Form::hidden("mid",$session{form}{mid}); - $html .= ''; - $html .= ''; - $html .= ''; - $html .= '
'.WebGUI::International::get(229).''.WebGUI::Form::text("subject",30,255,$subject).'
'.WebGUI::International::get(230).''.WebGUI::Form::textArea("message",'',50,6,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; - $html .= www_showMessage(); + return WebGUI::Discussion::postReply(); } else { - $html = WebGUI::Privilege::insufficient(); + return WebGUI::Privilege::insufficient(); } - return $html; } #------------------------------------------------------------------- sub www_postReplySave { - my ($rid, %board, $mid); + my (%board); tie %board, 'Tie::CPHash'; %board = _getBoardProperties($session{form}{wid}); if (WebGUI::Privilege::isInGroup($board{groupToPost},$session{user}{userId})) { - if ($session{form}{subject} eq "") { - $session{form}{subject} = WebGUI::International::get(232); - } - if ($session{form}{message} eq "") { - $session{form}{subject} .= ' '.WebGUI::International::get(233); - } - $mid = getNextId("messageId"); - ($rid) = WebGUI::SQL->quickArray("select rid from message where messageId=$session{form}{mid}",$session{dbh}); - WebGUI::SQL->write("insert into message values ($mid, $rid, $session{form}{wid}, $session{form}{mid}, $session{user}{userId}, ".quote($session{user}{username}).", ".quote($session{form}{subject}).", ".quote($session{form}{message}).", ".time().")", $session{dbh}); + WebGUI::Discussion::postReplySave(); return www_showMessage(); } else { return WebGUI::Privilege::insufficient(); @@ -278,7 +206,7 @@ sub www_showMessage { my (@data, $html, %board, %message); tie %message, 'Tie::CPHash'; tie %board, 'Tie::CPHash'; - %message = WebGUI::SQL->quickHash("select * from message where messageId=$session{form}{mid}",$session{dbh}); + %message = WebGUI::Discussion::getMessage($session{form}{mid}); %board = _getBoardProperties($session{form}{wid}); $html .= '

'.$message{subject}.'

'; $html .= '
'; @@ -292,31 +220,30 @@ sub www_showMessage { $html .= ''.WebGUI::International::get(235).'
'; } $html .= ''.WebGUI::International::get(242).'
'; - @data = WebGUI::SQL->quickArray("select max(messageId) from message where widgetId=$message{widgetId} and pid=0 and messageId<$message{rid}",$session{dbh}); + @data = WebGUI::SQL->quickArray("select max(messageId) from discussion where widgetId=$message{widgetId} and pid=0 and messageId<$message{rid}",$session{dbh}); if ($data[0] ne "") { $html .= '« '.WebGUI::International::get(241).'
'; # } else { # $html .= '« '.WebGUI::International::get(241).'
'; } - @data = WebGUI::SQL->quickArray("select min(messageId) from message where widgetId=$message{widgetId} and pid=0 and messageId>$message{rid}",$session{dbh}); + @data = WebGUI::SQL->quickArray("select min(messageId) from discussion where widgetId=$message{widgetId} and pid=0 and messageId>$message{rid}",$session{dbh}); if ($data[0] ne "") { $html .= ''.WebGUI::International::get(243).' »
'; # } else { # $html .= WebGUI::International::get(243).' »
'; } $html .= '
'; - $message{message} =~ s/\n/\/g; $html .= $message{message}; $html .= '
'; $html .= ''; $html .= ''; - @data = WebGUI::SQL->quickArray("select messageId,subject,username,dateOfPost,userId from message where messageId=$message{rid}",$session{dbh}); + @data = WebGUI::SQL->quickArray("select messageId,subject,username,dateOfPost,userId from discussion where messageId=$message{rid}",$session{dbh}); $html .= ''.substr($data[1],0,30).''; - $html .= _traverseReplyTree($message{rid},1); + $html .= WebGUI::Discussion::traverseReplyTree($message{rid},1); $html .= "
'.WebGUI::International::get(229).''.WebGUI::International::get(244).''.WebGUI::International::get(245).'
'.$data[2].''.epochToHuman($data[3],"%M/%D %H:%n%p").'
"; return $html; } @@ -344,12 +271,12 @@ sub www_view { $html .= '
'.WebGUI::International::get(246).'
'; $html .= ''; $html .= ''; - #$sth = WebGUI::SQL->read("select messageId,subject,count(*)-1,username,dateOfPost,max(dateOfPost),max(messageId) from message where widgetId=$_[0] group by rid order by messageId desc", $session{dbh}); - $sth = WebGUI::SQL->read("select messageId,subject,username,dateOfPost,userId from message where widgetId=$_[0] and pid=0 order by messageId desc", $session{dbh}); + #$sth = WebGUI::SQL->read("select messageId,subject,count(*)-1,username,dateOfPost,max(dateOfPost),max(messageId) from discussion where widgetId=$_[0] group by rid order by messageId desc", $session{dbh}); + $sth = WebGUI::SQL->read("select messageId,subject,username,dateOfPost,userId from discussion where widgetId=$_[0] and pid=0 order by messageId desc", $session{dbh}); while (@data = $sth->array) { if ($i >= ($itemsPerPage*$pn) && $i < ($itemsPerPage*($pn+1))) { - @last = WebGUI::SQL->quickArray("select messageId,dateOfPost,username,subject,userId from message where widgetId=$_[0] and rid=$data[0] order by dateOfPost desc",$session{dbh}); - ($replies) = WebGUI::SQL->quickArray("select count(*)-1 from message where rid=$data[0]",$session{dbh}); + @last = WebGUI::SQL->quickArray("select messageId,dateOfPost,username,subject,userId from discussion where widgetId=$_[0] and rid=$data[0] order by dateOfPost desc",$session{dbh}); + ($replies) = WebGUI::SQL->quickArray("select count(*)-1 from discussion where rid=$data[0]",$session{dbh}); $html .= ''; } $i++; diff --git a/lib/WebGUI/Widget/SQLReport.pm b/lib/WebGUI/Widget/SQLReport.pm index 0e89b345d..f2a384be0 100644 --- a/lib/WebGUI/Widget/SQLReport.pm +++ b/lib/WebGUI/Widget/SQLReport.pm @@ -129,7 +129,7 @@ sub www_view { if ($data{description} ne "") { $output .= $data{description}.'

'; } - @template = split(/\^\-/,$data{template}); + @template = split(/\^\-\;/,$data{template}); $output .= $template[0]; if ($data{DSN} =~ /\DBI\:\w+\:\w+/) { $dbh = DBI->connect($data{DSN},$data{username},$data{identifier}); @@ -147,7 +147,7 @@ sub www_view { if (defined $sth) { while (@result = $sth->array) { $temp = $template[1]; - $temp =~ s/\^(\d)/$result[$1]/g; + $temp =~ s/\^(\d)\;/$result[$1]/g; if ($data{convertCarriageReturns}) { $temp =~ s/\n/\/g; } diff --git a/lib/WebGUI/Widget/SiteMap.pm b/lib/WebGUI/Widget/SiteMap.pm index d75e18b6e..0f4aa75da 100644 --- a/lib/WebGUI/Widget/SiteMap.pm +++ b/lib/WebGUI/Widget/SiteMap.pm @@ -24,18 +24,29 @@ use WebGUI::Widget; #------------------------------------------------------------------- sub _traversePageTree { - my ($sth, @data, $output, $depth, $i); - for ($i=0;$i<=$_[1];$i++) { - $depth .= "  "; + my ($lineSpacing, $sth, @data, $output, $depth, $i, $toLevel); + if ($_[2] > 0) { + $toLevel = $_[2]; + } else { + $toLevel = 99; } - $sth = WebGUI::SQL->read("select urlizedTitle, title, pageId from page where parentId='$_[0]' order by sequenceNumber",$session{dbh}); - while (@data = $sth->array) { - if (WebGUI::Privilege::canViewPage($data[2])) { - $output .= $depth.'· '.$data[1].'
'; - $output .= _traversePageTree($data[2],$_[1]+1); - } + for ($i=1;$i<=$_[1]*$_[3];$i++) { + $depth .= " "; + } + for ($i=1;$i<=$_[5];$i++) { + $lineSpacing .= "
"; + } + if ($_[1] < $toLevel) { + $sth = WebGUI::SQL->read("select urlizedTitle, title, pageId from page where parentId='$_[0]' order by sequenceNumber",$session{dbh}); + while (@data = $sth->array) { + if (WebGUI::Privilege::canViewPage($data[2])) { + $output .= $depth.$_[4].' '.$data[1].''; + $output .= $lineSpacing; + $output .= _traversePageTree($data[2],$_[1]+1,$_[2],$_[3],$_[4],$_[5]); + } + } + $sth->finish; } - $sth->finish; return $output; } @@ -47,24 +58,29 @@ sub purge { #------------------------------------------------------------------- sub widgetName { - return "Site Map"; + return WebGUI::International::get(2,$namespace); } #------------------------------------------------------------------- sub www_add { my ($output); if (WebGUI::Privilege::canEditPage()) { - $output = '

Add Site Map

'; + $output = ''; + $output .= '

'.WebGUI::International::get(1,$namespace).'

'; + $output .= ''; $output .= WebGUI::Form::hidden("widget",$namespace); $output .= WebGUI::Form::hidden("func","addSave"); $output .= '
'.WebGUI::International::get(229).''.WebGUI::International::get(244).''.WebGUI::International::get(247).''.WebGUI::International::get(248).''.WebGUI::International::get(249).'
'.substr($data[1],0,30).''.$data[2].''.epochToHuman($data[3],"%M/%D %H:%n%p").''.$replies.''.substr($last[3],0,30).' @ '.epochToHuman($last[1],"%M/%D %H:%n%p").' by '.$last[2].'
'; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; $output .= '
Title'.WebGUI::Form::text("title",20,128,'Site Map').'
Display title?'.WebGUI::Form::checkbox("displayTitle",1).'
Process Macros?'.WebGUI::Form::checkbox("processMacros",1).'
Description'.WebGUI::Form::textArea("description",'').'
Starting from this level?'.WebGUI::Form::checkbox("startAtThisLevel",1,1).'
Show only one level?'.WebGUI::Form::checkbox("showOnlyThisLevel",1,1).'
'.WebGUI::Form::submit("save").'
'.WebGUI::International::get(99).''.WebGUI::Form::text("title",20,128,'Site Map').'
'.WebGUI::International::get(174).''.WebGUI::Form::checkbox("displayTitle",1,1).'
'.WebGUI::International::get(175).''.WebGUI::Form::checkbox("processMacros",1).'
'.WebGUI::International::get(85).''.WebGUI::Form::textArea("description",'').'
'.WebGUI::International::get(3,$namespace).''.WebGUI::Form::checkbox("startAtThisLevel",1,1).'
'.WebGUI::International::get(4,$namespace).''.WebGUI::Form::text("depth",20,2,0).'
'.WebGUI::International::get(6,$namespace).''.WebGUI::Form::text("indent",20,2,5).'
'.WebGUI::International::get(7,$namespace).''.WebGUI::Form::text("bullet",20,30,'·').'
'.WebGUI::International::get(8,$namespace).''.WebGUI::Form::text("bullet",20,1,1).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; return $output; } else { @@ -78,7 +94,7 @@ sub www_addSave { my ($widgetId, $displayTitle, $image, $attachment); if (WebGUI::Privilege::canEditPage()) { $widgetId = create(); - WebGUI::SQL->write("insert into SiteMap values ($widgetId, '$session{form}{startAtThisLevel}', '$session{form}{showOnlyThisLevel}')",$session{dbh}); + WebGUI::SQL->write("insert into SiteMap values ($widgetId, '$session{form}{startAtThisLevel}', '$session{form}{depth}', '$session{form}{indent}', ".quote($session{form}{bullet}).", '$session{form}{lineSpacing}')",$session{dbh}); return ""; } else { return WebGUI::Privilege::insufficient(); @@ -91,17 +107,22 @@ sub www_edit { tie %data, 'Tie::CPHash'; if (WebGUI::Privilege::canEditPage()) { %data = WebGUI::SQL->quickHash("select * from widget,SiteMap where widget.widgetId=SiteMap.widgetId and widget.widgetId=$session{form}{wid}",$session{dbh}); - $output = '

Edit Site Map

'; + $output = ''; + $output .= '

'.WebGUI::International::get(5,$namespace).'

'; + $output .= ''; $output .= WebGUI::Form::hidden("wid",$session{form}{wid}); $output .= WebGUI::Form::hidden("func","editSave"); $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; + $output .= ''; $output .= '
Title'.WebGUI::Form::text("title",20,128,$data{title}).'
Display title?'.WebGUI::Form::checkbox("displayTitle",1,$data{displayTitle}).'
Process Macros?'.WebGUI::Form::checkbox("processMacros",1,$data{processMacros}).'
Description'.WebGUI::Form::textArea("description",$data{description}).'
Starting from this level?'.WebGUI::Form::checkbox("startAtThisLevel",1,$data{startAtThisLevel}).'
Show only one level?'.WebGUI::Form::checkbox("showOnlyThisLevel",1,$data{showOnlyThisLevel}).'
'.WebGUI::Form::submit("save").'
'.WebGUI::International::get(99).''.WebGUI::Form::text("title",20,128,$data{title}).'
'.WebGUI::International::get(174).''.WebGUI::Form::checkbox("displayTitle",1,$data{displayTitle}).'
'.WebGUI::International::get(175).''.WebGUI::Form::checkbox("processMacros",1,$data{processMacros}).'
'.WebGUI::International::get(85).''.WebGUI::Form::textArea("description",$data{description}).'
'.WebGUI::International::get(3,$namespace).''.WebGUI::Form::checkbox("startAtThisLevel",1,$data{startAtThisLevel}).'
'.WebGUI::International::get(4,$namespace).''.WebGUI::Form::text("depth",20,2,$data{depth}).'
'.WebGUI::International::get(6,$namespace).''.WebGUI::Form::text("indent",20,2,$data{indent}).'
'.WebGUI::International::get(7,$namespace).''.WebGUI::Form::text("bullet",20,30,$data{bullet}).'
'.WebGUI::International::get(8,$namespace).''.WebGUI::Form::text("lineSpacing",20,1,$data{lineSpacing}).'
'.WebGUI::Form::submit(WebGUI::International::get(62)).'
'; return $output; } else { @@ -113,7 +134,7 @@ sub www_edit { sub www_editSave { if (WebGUI::Privilege::canEditPage()) { update(); - WebGUI::SQL->write("update SiteMap set startAtThisLevel='$session{form}{startAtThisLevel}', showOnlyThisLevel='$session{form}{showOnlyThisLevel}' where widgetId=$session{form}{wid}",$session{dbh}); + WebGUI::SQL->write("update SiteMap set startAtThisLevel='$session{form}{startAtThisLevel}', depth='$session{form}{depth}', indent='$session{form}{indent}', bullet=".quote($session{form}{bullet}).", lineSpacing='$session{form}{lineSpacing}' where widgetId=$session{form}{wid}",$session{dbh}); return ""; } else { return WebGUI::Privilege::insufficient(); @@ -122,7 +143,7 @@ sub www_editSave { #------------------------------------------------------------------- sub www_view { - my (%data, $output, $sth, @root, $parent); + my (%data, $output, $parent); tie %data, 'Tie::CPHash'; %data = WebGUI::SQL->quickHash("select * from widget,SiteMap where widget.widgetId=SiteMap.widgetId and widget.widgetId='$_[0]'",$session{dbh}); if (defined %data) { @@ -135,16 +156,7 @@ sub www_view { } else { $parent = 1; } - $sth = WebGUI::SQL->read("select urlizedTitle, title, pageId from page where parentId='$parent' order by sequenceNumber",$session{dbh}); - while (@root = $sth->array) { - if (WebGUI::Privilege::canViewPage($root[2])) { - $output .= '· '.$root[1].'
'; - unless ($data{showOnlyThisLevel} eq 1) { - $output .= _traversePageTree($root[2],1); - } - } - } - $sth->finish; + $output .= _traversePageTree($parent,0,$data{depth},$data{indent},$data{bullet},$data{lineSpacing}); if ($data{processMacros}) { $output = WebGUI::Macro::process($output); } diff --git a/lib/WebGUI/Widget/UserSubmission.pm b/lib/WebGUI/Widget/UserSubmission.pm index 1f3d3d30d..2e133900c 100644 --- a/lib/WebGUI/Widget/UserSubmission.pm +++ b/lib/WebGUI/Widget/UserSubmission.pm @@ -17,6 +17,8 @@ use Tie::CPHash; use WebGUI::DateTime; use WebGUI::International; use WebGUI::Macro; +use WebGUI::MessageLog; +use WebGUI::Operation; use WebGUI::Privilege; use WebGUI::Session; use WebGUI::SQL; @@ -51,8 +53,10 @@ sub www_add { $output .= ''.WebGUI::International::get(175).''.WebGUI::Form::checkbox("processMacros",1).''; $output .= ''.WebGUI::International::get(85).''.WebGUI::Form::textArea("description",'',50,5,1).''; %hash = WebGUI::SQL->buildHash("select groupId,groupName from groups where groupName<>'Reserved' order by groupName",$session{dbh}); + $array[0] = 4; + $output .= ''.WebGUI::International::get(1,$namespace).''.WebGUI::Form::selectList("groupToApprove",\%hash,\@array).''; $array[0] = 2; - $output .= ''.WebGUI::International::get(279).''.WebGUI::Form::selectList("groupToContribute",\%hash,\@array).''; + $output .= ''.WebGUI::International::get(2,$namespace).''.WebGUI::Form::selectList("groupToContribute",\%hash,\@array).''; $output .= ''.WebGUI::International::get(280).''.WebGUI::Form::text("submissionsPerPage",20,2,50).''; %hash = ("Approved"=>WebGUI::International::get(281),"Denied"=>WebGUI::International::get(282),"Pending"=>WebGUI::International::get(283)); $output .= ''.WebGUI::International::get(284).''.WebGUI::Form::selectList("defaultStatus",\%hash,'',1).''; @@ -70,7 +74,7 @@ sub www_addSave { my ($widgetId); if (WebGUI::Privilege::canEditPage()) { $widgetId = create(); - WebGUI::SQL->write("insert into UserSubmission values ($widgetId, $session{form}{groupToContribute}, '$session{form}{submissionsPerPage}', '$session{form}{defaultStatus}')",$session{dbh}); + WebGUI::SQL->write("insert into UserSubmission values ($widgetId, $session{form}{groupToContribute}, '$session{form}{submissionsPerPage}', '$session{form}{defaultStatus}', $session{form}{groupToApprove})",$session{dbh}); return ""; } else { return WebGUI::Privilege::insufficient(); @@ -110,9 +114,9 @@ sub www_addSubmission { #------------------------------------------------------------------- sub www_addSubmissionSave { - my ($title, $submissionId, $image, $attachment, $status, $groupToContribute); - ($status, $groupToContribute) = WebGUI::SQL->quickArray("select defaultStatus,groupToContribute from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); - if (WebGUI::Privilege::isInGroup($groupToContribute,$session{user}{userId})) { + my ($title, $submissionId, $image, $attachment, %userSubmission); + %userSubmission = WebGUI::SQL->quickHash("select * from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); + if (WebGUI::Privilege::isInGroup($userSubmission{groupToContribute},$session{user}{userId})) { $submissionId = getNextId("submissionId"); $image = saveAttachment("image",$session{form}{wid},$submissionId); $attachment = saveAttachment("attachment",$session{form}{wid},$submissionId); @@ -121,13 +125,31 @@ sub www_addSubmissionSave { } else { $title = WebGUI::International::get(290); } - WebGUI::SQL->write("insert into UserSubmission_submission values ($session{form}{wid}, $submissionId, ".quote($title).", ".time().", ".quote($session{user}{username}).", '$session{user}{userId}', ".quote($session{form}{content}).", ".quote($image).", ".quote($attachment).", '$status', '$session{form}{convertCarriageReturns}')",$session{dbh}); + WebGUI::SQL->write("insert into UserSubmission_submission values ($session{form}{wid}, $submissionId, ".quote($title).", ".time().", ".quote($session{user}{username}).", '$session{user}{userId}', ".quote($session{form}{content}).", ".quote($image).", ".quote($attachment).", '$userSubmission{defaultStatus}', '$session{form}{convertCarriageReturns}')",$session{dbh}); + if ($userSubmission{defaultStatus} ne "Approved") { + WebGUI::MessageLog::addEntry('',$userSubmission{groupToApprove},$session{page}{url}.'?func=viewSubmission&wid='.$session{form}{wid}.'&sid='.$submissionId,3,$namespace); + } return ""; } else { return WebGUI::Privilege::insufficient(); } } +#------------------------------------------------------------------- +sub www_approveSubmission { + my (%userSubmission, %submission); + if (WebGUI::Privilege::isInGroup(4,$session{user}{userId}) || WebGUI::Privilege::isInGroup(3,$session{user}{userId})) { + %submission = WebGUI::SQL->quickHash("select * from UserSubmission_submission where submissionId=$session{form}{sid}",$session{dbh}); + %userSubmission = WebGUI::SQL->quickHash("select * from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); + WebGUI::SQL->write("update UserSubmission_submission set status='Approved' where submissionId=$session{form}{sid}",$session{dbh}); + WebGUI::MessageLog::addEntry($submission{userId},'',$session{page}{url}.'?func=viewSubmission&wid='.$session{form}{wid}.'&sid='.$session{form}{sid},4,$namespace); + WebGUI::MessageLog::completeEntry($session{form}{mlog}); + return WebGUI::Operation::www_viewMessageLog(); + } else { + return WebGUI::Privilege::insufficient(); + } +} + #------------------------------------------------------------------- sub www_deleteAttachment { my ($owner); @@ -179,10 +201,27 @@ sub www_deleteSubmissionConfirm { } } +#------------------------------------------------------------------- +sub www_denySubmission { + my (%submission, %userSubmission); + if (WebGUI::Privilege::isInGroup(4,$session{user}{userId}) || WebGUI::Privilege::isInGroup(3,$session{user}{userId})) { + %submission = WebGUI::SQL->quickHash("select * from UserSubmission_submission where submissionId=$session{form}{sid}",$session{dbh}); + %userSubmission = WebGUI::SQL->quickHash("select * from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); + WebGUI::SQL->write("update UserSubmission_submission set status='Denied' where submissionId=$session{form}{sid}",$session{dbh} +); + WebGUI::MessageLog::addEntry($submission{userId},'',$session{page}{url}.'?func=viewSubmission&wid='.$session{form}{wid}.'&sid='.$session{form}{sid},5,$namespace); + WebGUI::MessageLog::completeEntry($session{form}{mlog}); + return WebGUI::Operation::www_viewMessageLog(); + } else { + return WebGUI::Privilege::insufficient(); + } +} + #------------------------------------------------------------------- sub www_edit { my ($output, %data, @array, $sth, %hash); tie %data, 'Tie::CPHash'; + tie %hash, 'Tie::IxHash'; if (WebGUI::Privilege::canEditPage()) { %data = WebGUI::SQL->quickHash("select * from widget,UserSubmission where widget.widgetId=$session{form}{wid} and widget.widgetId=UserSubmission.widgetId",$session{dbh}); $output = ''; @@ -195,9 +234,11 @@ sub www_edit { $output .= ''.WebGUI::International::get(174).''.WebGUI::Form::checkbox("displayTitle","1",$data{displayTitle}).''; $output .= ''.WebGUI::International::get(175).''.WebGUI::Form::checkbox("processMacros","1",$data{processMacros}).''; $output .= ''.WebGUI::International::get(85).''.WebGUI::Form::textArea("description",$data{description}).''; - $array[0] = $data{groupToContribute}; + $array[0] = $data{groupToApprove}; %hash = WebGUI::SQL->buildHash("select groupId,groupName from groups where groupName<>'Reserved' order by groupName",$session{dbh}); - $output .= ''.WebGUI::International::get(279).''.WebGUI::Form::selectList("groupToContribute",\%hash,\@array,1).''; + $output .= ''.WebGUI::International::get(1,$namespace).''.WebGUI::Form::selectList("groupToApprove",\%hash,\@array,1).''; + $array[0] = $data{groupToContribute}; + $output .= ''.WebGUI::International::get(2,$namespace).''.WebGUI::Form::selectList("groupToContribute",\%hash,\@array,1).''; $output .= ''.WebGUI::International::get(280).''.WebGUI::Form::text("submissionsPerPage",20,2,$data{submissionsPerPage}).''; %hash = ("Approved"=>WebGUI::International::get(281),"Denied"=>WebGUI::International::get(282),"Pending"=>WebGUI::International::get(283)); $array[0] = $data{defaultStatus}; @@ -214,7 +255,7 @@ sub www_edit { sub www_editSave { if (WebGUI::Privilege::canEditPage()) { update(); - WebGUI::SQL->write("update UserSubmission set groupToContribute=$session{form}{groupToContribute}, submissionsPerPage=$session{form}{submissionsPerPage}, defaultStatus='$session{form}{defaultStatus}' where widgetId=$session{form}{wid}",$session{dbh}); + WebGUI::SQL->write("update UserSubmission set groupToContribute=$session{form}{groupToContribute}, groupToApprove=$session{form}{groupToApprove}, submissionsPerPage=$session{form}{submissionsPerPage}, defaultStatus='$session{form}{defaultStatus}' where widgetId=$session{form}{wid}",$session{dbh}); return ""; } else { return WebGUI::Privilege::insufficient(); @@ -258,10 +299,10 @@ sub www_editSubmission { #------------------------------------------------------------------- sub www_editSubmissionSave { - my ($owner,$status,$image,$attachment,$title); + my ($owner,%userSubmission,$image,$attachment,$title); ($owner) = WebGUI::SQL->quickArray("select userId from UserSubmission_submission where submissionId=$session{form}{sid}",$session{dbh}); if ($owner == $session{user}{userId}) { - ($status) = WebGUI::SQL->quickArray("select defaultStatus from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); + %userSubmission = WebGUI::SQL->quickHash("select * from UserSubmission where widgetId=$session{form}{wid}",$session{dbh}); $image = saveAttachment("image",$session{form}{wid},$session{form}{sid}); if ($image ne "") { $image = 'image='.quote($image).', '; @@ -275,7 +316,10 @@ sub www_editSubmissionSave { } else { $title = WebGUI::International::get(290); } - WebGUI::SQL->write("update UserSubmission_submission set dateSubmitted=".time().", convertCarriageReturns='$session{form}{convertCarriageReturns}', title=".quote($title).", content=".quote($session{form}{content}).", ".$image.$attachment." status='$status' where submissionId=$session{form}{sid}",$session{dbh}); + WebGUI::SQL->write("update UserSubmission_submission set dateSubmitted=".time().", convertCarriageReturns='$session{form}{convertCarriageReturns}', title=".quote($title).", content=".quote($session{form}{content}).", ".$image.$attachment." status='$userSubmission{defaultStatus}' where submissionId=$session{form}{sid}",$session{dbh}); + if ($userSubmission{defaultStatus} ne "Approved") { + WebGUI::MessageLog::addEntry('',$userSubmission{groupToApprove},$session{page}{url}.'?func=viewSubmission&wid='.$session{form}{wid}.'&sid='.$session{form}{sid},3,$namespace); + } return www_viewSubmission(); } else { return WebGUI::Privilege::insufficient(); @@ -284,7 +328,7 @@ sub www_editSubmissionSave { #------------------------------------------------------------------- sub www_view { - my (%data, @submission, $output, $widgetId, $sth, @row, $i, $pn); + my (%data, @submission, $output, $widgetId, $sth, @row, $i, $dataRows, $prevNextBar); tie %data, 'Tie::CPHash'; $widgetId = shift; %data = WebGUI::SQL->quickHash("select * from widget,UserSubmission where widget.widgetId=$widgetId and widget.widgetId=UserSubmission.widgetId",$session{dbh}); @@ -305,30 +349,12 @@ sub www_view { } $sth->finish; $output .= '
'.WebGUI::International::get(294).'
'; + ($dataRows, $prevNextBar) = paginate($data{submissionsPerPage},$session{page}{url},\@row); $output .= ''; $output .= ''; - if ($session{form}{pn} < 1) { - $pn = 0; - } else { - $pn = $session{form}{pn}; - } - for ($i=($data{submissionsPerPage}*$pn); $i<($data{submissionsPerPage}*($pn+1));$i++) { - $output .= $row[$i]; - } - $output .= '
'.WebGUI::International::get(99).''.WebGUI::International::get(287).''.WebGUI::International::get(296).'
'; - $output .= ''; + $output .= $dataRows; + $output .= ''; + $output .= $prevNextBar; } return $output; } @@ -352,22 +378,15 @@ sub www_viewSubmission { $output .= ''.WebGUI::International::get(302).'
'; } if ($submission{status} eq "Pending" && (WebGUI::Privilege::isInGroup(3,$session{user}{userId}) || WebGUI::Privilege::isInGroup(4,$session{user}{userId}))) { - $output .= ''.WebGUI::International::get(299).'
'; - $output .= ''.WebGUI::International::get(300).'
'; - $output .= ''.WebGUI::International::get(301).'
'; + $output .= ''.WebGUI::International::get(299).'
'; + $output .= ''.WebGUI::International::get(300).'
'; + $output .= ''.WebGUI::International::get(301).'
'; } $output .= ''; #---content if ($submission{image} ne "") { $output .= ''; } - if ($submission{status} eq "Pending" && (WebGUI::Privilege::isInGroup(3,$session{user}{userId}) || WebGUI::Privilege::isInGroup(4,$session{user}{userId}))) { - $output .= '
'; - $output .= ''.WebGUI::International::get(299).' · '; - $output .= ''.WebGUI::International::get(300).' · '; - $output .= ''.WebGUI::International::get(301).' '; - $output .= '
'; - } if ($submission{convertCarriageReturns}) { $submission{content} =~ s/\n/\/g; } diff --git a/testEnvironment.pl b/testEnvironment.pl index 9e7b24b88..45234bb40 100644 --- a/testEnvironment.pl +++ b/testEnvironment.pl @@ -32,7 +32,7 @@ if ($ARGV[0] eq "--help" || $ARGV[0] eq "/?" || $ARGV[0] eq "/help" || $ARGV[0] print "\nWebGUI is checking your system environment...\n\n"; -our $os; +my $os; if ($^O =~ /Win/i) { $os = "Microsoftish"; } else { @@ -76,6 +76,20 @@ if (eval { require LWP }) { } } +print "HTTP::Request module:\t"; +if (eval { require HTTP::Request }) { + print "OK\n"; +} else { + print "Please install LWP.\n"; +} + +print "HTTP::Headers module:\t"; +if (eval { require HTTP::Headers }) { + print "OK\n"; +} else { + print "Please install LWP.\n"; +} + print "Digest::MD5 module:\t"; if (eval { require Digest::MD5 }) { print "OK\n"; @@ -226,9 +240,6 @@ unless (eval { $dbh = DBI->connect($config->param('dsn'), $config->param('dbuser ################################### print "Latest version:\t\t"; -use LWP::UserAgent; -use HTTP::Request; -use HTTP::Headers; my ($header, $userAgent, $request, $response, $version, $referer); $userAgent = new LWP::UserAgent; $userAgent->agent("WebGUI-Check/2.0"); diff --git a/extras/WebGUI.js b/www/extras/WebGUI.js similarity index 100% rename from extras/WebGUI.js rename to www/extras/WebGUI.js diff --git a/extras/attachment.gif b/www/extras/attachment.gif similarity index 100% rename from extras/attachment.gif rename to www/extras/attachment.gif diff --git a/extras/become.gif b/www/extras/become.gif similarity index 100% rename from extras/become.gif rename to www/extras/become.gif diff --git a/extras/calendar.html b/www/extras/calendar.html similarity index 100% rename from extras/calendar.html rename to www/extras/calendar.html diff --git a/extras/colorPicker.gif b/www/extras/colorPicker.gif similarity index 100% rename from extras/colorPicker.gif rename to www/extras/colorPicker.gif diff --git a/extras/colorPicker.html b/www/extras/colorPicker.html similarity index 100% rename from extras/colorPicker.html rename to www/extras/colorPicker.html diff --git a/extras/copy.gif b/www/extras/copy.gif similarity index 100% rename from extras/copy.gif rename to www/extras/copy.gif diff --git a/extras/cut.gif b/www/extras/cut.gif similarity index 100% rename from extras/cut.gif rename to www/extras/cut.gif diff --git a/extras/delete.gif b/www/extras/delete.gif similarity index 100% rename from extras/delete.gif rename to www/extras/delete.gif diff --git a/extras/downArrow.gif b/www/extras/downArrow.gif similarity index 100% rename from extras/downArrow.gif rename to www/extras/downArrow.gif diff --git a/extras/edit.gif b/www/extras/edit.gif similarity index 100% rename from extras/edit.gif rename to www/extras/edit.gif diff --git a/extras/help.gif b/www/extras/help.gif similarity index 100% rename from extras/help.gif rename to www/extras/help.gif diff --git a/extras/ieEdit.html b/www/extras/ieEdit.html similarity index 100% rename from extras/ieEdit.html rename to www/extras/ieEdit.html diff --git a/extras/ieEdit.js b/www/extras/ieEdit.js similarity index 100% rename from extras/ieEdit.js rename to www/extras/ieEdit.js diff --git a/extras/jumpDown.gif b/www/extras/jumpDown.gif similarity index 100% rename from extras/jumpDown.gif rename to www/extras/jumpDown.gif diff --git a/extras/jumpUp.gif b/www/extras/jumpUp.gif similarity index 100% rename from extras/jumpUp.gif rename to www/extras/jumpUp.gif diff --git a/extras/leftArrow.gif b/www/extras/leftArrow.gif similarity index 100% rename from extras/leftArrow.gif rename to www/extras/leftArrow.gif diff --git a/extras/nonIeEdit.html b/www/extras/nonIeEdit.html similarity index 100% rename from extras/nonIeEdit.html rename to www/extras/nonIeEdit.html diff --git a/extras/nonIeEdit.js b/www/extras/nonIeEdit.js similarity index 100% rename from extras/nonIeEdit.js rename to www/extras/nonIeEdit.js diff --git a/extras/pbs.gif b/www/extras/pbs.gif similarity index 100% rename from extras/pbs.gif rename to www/extras/pbs.gif diff --git a/extras/plainBlackSoftware.gif b/www/extras/plainBlackSoftware.gif similarity index 100% rename from extras/plainBlackSoftware.gif rename to www/extras/plainBlackSoftware.gif diff --git a/extras/rightArrow.gif b/www/extras/rightArrow.gif similarity index 100% rename from extras/rightArrow.gif rename to www/extras/rightArrow.gif diff --git a/extras/spacer.gif b/www/extras/spacer.gif similarity index 100% rename from extras/spacer.gif rename to www/extras/spacer.gif diff --git a/extras/toolbar.gif b/www/extras/toolbar.gif similarity index 100% rename from extras/toolbar.gif rename to www/extras/toolbar.gif diff --git a/extras/upArrow.gif b/www/extras/upArrow.gif similarity index 100% rename from extras/upArrow.gif rename to www/extras/upArrow.gif diff --git a/extras/viewer.html b/www/extras/viewer.html similarity index 100% rename from extras/viewer.html rename to www/extras/viewer.html