KnowledgeShare v2.0 |
:: Overview :: Features :: System Requirements :: License :: On-line Demo :: Download :: Installation :: Configuration :: Database Schema :: Customization :: User and Administration Interfaces
Overview KnowledgeShare is a flexible FAQ or knowledgebase system for your web site. It can display articles in a Question/Answer, Problem/Solution or any other content format. KnowledgeShare also enables link and download (file) management so that you can offer resources and downloadable files in your knowledge base / support system. KnowledgeShare is easy to install, integrate and maintain. All styles can be managed from a common style sheet (default.css). Your own custom design can also be applied via the i_header.asp and i_footer.asp HTML files that create a "wrapper" around the forum content. The entire system contains 16 files, and the article display code itself is condensed to 1 file. Since the application includes the complete ASP (VBscript) source code and a Microsoft Access or SQL database, it can be customized and integrated to suite your environment. For download and purchase information visit, ASPapp.com Features
:: No 3rd party DLL's or executables :: 4 user levels: anonymous (no login required), 'registered user', 'editor' and 'administrator' :: WYSIWYG rich-text editor for article authoring :: Unlimited nested categories, define your own k-base hierarchy :: Support for popular SMTP E-Mail components (ASP Mail, ASP Email, JMail) :: Can be used with either Access or SQL Server database :: Customizable email confirmation messages :: Resources library provides complete links management (category browsing, suggest links, rate/rank) :: Complete user management tools (login, register, edit/delete, password lookup) :: Downloads/file library includes browser-based uploads and file management :: Display featured or "hot" articles :: Users can rate articles on usefulness :: Basic stats reporting of impressions and click-thrus :: Standard ASP VBScript means you have the customizable source code :: Easy to use admin interface lets you maintain the site via any browser System Requirements It requires that your web site be hosted on Microsoft IIS 4.0 or later. KnowledgeShare can use an Access database file which will work on most ISP hosted sites. Or it can also be used with Microsoft SQL Server 6.5 or later (also supported by many ISP's) for enhanced performance and reliability. Mailing list features require one of the supported E-Mail Components listed above. License A limited, non-exclusive license and right to install and use one (1) copy of the program for your own use on one (1) website. You may not network the program or otherwise install it or use it on more than one computer at a time. The program is licensed, not sold. Your license confers no title or ownership in the program. For more information see, readme.asp On-line Demonstration
User view Editor/author view Installation The installation process entails..
2) extracting or copying the files to a Web accessible folder 3) connecting to the Access (.mdb) or SQL server database For Access For SQL Configuration To set-up your site, there are some basic settings that need to be modified. Some of these settings can be updated from your Web browser, and others require that you can open the appropriate .asp files in an editor. This editor can be any standard text or HTML editor (Visual InterDev, Homesite, Dreamweaver, Notepad, etc..). The application database comes pre-populated with data so that you can see how the .asp pages interact with the database.
All of the links and content (articles) in the are classified by categories. You probably have a hierarchical list of categories and sub-categories in mind, and now is the time to define these using the admin pages. Categories can be anything that is best suited to your requirements. Your categories might by topics, subjects, technical areas, product or any other multi-level classification system that will fit to the links and content that will later be added to your site. To define new, or to change the existing categories go to the admin_cats.asp from your Web browser (you must login as admin/admin to access this page). Category data is stored in the 'Cats' table. Each category has a label that is stored in the 'Cat' field and a related 'CatId' that is an automatically generated (Access: autonumber or SQL: identity field) number. This 'CatId' is created when you add a new category. There is also an optional 'ParentId' field. This field is used to create the hierarchy of categories and sub-categories. Examine the table below to see how the 'My Main1 Sub Category' and 'My 2nd Main1 Sub Category' sub-categories are created under the 'My Main1 Category' category. Cat Table
Categories without ParentId's are considered to be root (or main) categories. More advanced developers may also wish to also use the 'RelatedId' field to created related categories that will display at the bottom of the 'links.asp' page. Category relationships can be updated using 'admin_related_cats.asp' The CategoryTypes table (admin_cattypes.asp) is used to create different groups of categories. You may want to have one set of categories for knowledge base articles, and a different set of categories for links By default, several CatTypes have been created and can be updated using the 'admin_cattypes.asp' page. To see how the CatTypes affect site hierarchy view 'cat.asp' in your browser. This page organizes each category by it's category type, and then display subordinate categroies, content, links, and classifieds. If you choose to modify the existing, or create new CategoryTypes, you may need to also modify the pages that are used for content display or submission. The Category selection list in these pages reference the corresponding CatType, so if you change the value of the CatTypeId in the database, you'll need to change the database SQL query that is used to create the category select list on the 'submit_' page. The SQL query is defined within the actual .asp code, so you'll need to edit the appropriate pages in a text or HTML editor. Database queries can be changed by modifying the SQL statement used to created the Category select lists in the 'submit_' page.. ie; =get_options ("SELECT Cat... ...WHERE Cats.CatTypeId = Cattypes.CatTypeId AND Cats.CatTypeId = 9, CatId)
The site has the ability to send emails automatically when triggered by the following events: -- new user registration (register.asp) -- user password lookup (login.asp) -- bad link error reporting (links.asp) -- link approval (admin_links.asp) To activate email features you need to do the following: For security reasons, it is recommended to change the default admin account password (admin) via 'admin_users.asp' To change the password, or any other account fields, click the [edit] link in the row for username 'admin'. Database Schema
Cats, CatTypes - These tables establish the hierarchy of categories througout the site. Categories can be anything you want such as regions, topics, subjects, people, etc.. CatTypes are used so that different categories sets can be used to organize different areas. For example, you may want "Good sites", "Bad sites", and "OK sites" as link categories, but "News", "Articles", and "Tutorials" as content categories. You might also want the classifieds area to use it's own categories. Since the 'ParentId' field is used to establish parent, child relationships you can define several levels of categories (ie: Main category, sub category, sub-sub category, etc..). Content, ContentTypes - These table are used to manage the content area. ContentTypes can be used to define different types of content. Content can also be related to a category (CatID). The submitter of the content is identified by user_id. Links, LinkTypes, LinkRatings - These table are used to manage the links area. Links always have a related category (CatID). LinkTypes can be used as another means to classify links. For example, link types might be: "resource", "article", "news/press release", "personal site", "external link", "internal link", "download", etc.. The submitter of the link is identified by user_id. MessageRecipients, Messages - These tables are used to manage the internal messaging features. The submitter of the message is identified by Messages.user_id and the intended recipients are defined by 1 or more user_id's in MessageRecipients. Users - This table is used to manage all "registered" users and for login validation. The "user_id" field also relates the user to data stored in the 'Links', 'Content', 'MessageRecipients', 'Messages'. Using the "user_id" any data that is posted by or intended for any given user can be tracked. UserLinks - This table is used to track and manage a user's favorite links. NOTE: Other tables may exist that are not used for the functionality of this version. Customization To make functional changes to your site, an understanding of Active Server Pages, VBScript and relational database design is needed.
Changing the style and look of the site
<link rel=stylesheet type="text/css" href="default.css">
Changing page content and functionality
If you would like to modify other pages, consider the following page architecture that is used consistently throughout all pages in the application. -- The 'i_utils.asp' file (database and login functions library) is included at the top of every page. -- Variables are declared (dim) -- The "request_" and "validate_" subroutines -- The "db_" subroutines -- Key database fields are requested -- The action variable is requested and handled using the "select case action" statement -- Main code section (executed regardless of value of action variable) -- The 'i_header.asp' include file is displayed -- Forms and content are displayed -- The 'i_footer.asp' include file is displayed
Creating other user access levels / Modifying security
accesslevel = null or 0 -- anonymous users that are not logged in accesslevel = 1 -- (registered user/member) these users can access all (user) pages and submit links. accesslevel = 2 -- (author/editor) these users can access some of the 'admin_' pages to submit/modify articles and links. accesslevel = 3 -- (admin) these users can access all of the 'admin_' pages including user, category and file management. When a user logs in, the session 'user_id' and 'accesslevel' variables are set. For example, the following code could be used to display a section only to users with an accesslevel of 2 or greater...
<% if session("accesslevel") >= 2 then %>
response.write "you are seeing this because you're logged in with an access level of at least 2"
<% end if %>
To set an access level for an entire page, just modify the check_security statement at the top of the page...
<% check_security(n) %>
The User and Administration Interface User Pages
Administration Pages For consistency in page naming, the pages used for adminstration begin with 'admin_'. All of these pages can be used to add, edit, and delete data in the application database and require a user to be logged in with an accesslevel of 2 or greater. A users's access level is determined by the value of the accesslevel field in the Users table. The administrative pages used for User, Category, and File management require a minimum access level of 3. For more information on security, see "Creating other user access levels / Modifying security" All administrative features can be accessed via 'admin.asp'.
Support and Customer Assistance ASPapp.com support is staffed from Monday-Friday 8:30 AM to 6:00 PM United States EST. Any requests during this time should be directed to support@aspapp.com, otherwise information and assistance can be found in the support forums at ASPapp.com. Telephone support is not provided. ^ Top |