===== VSNS Lemon Developer Resources ===== Whether you're looking to further develop VSNS Lemon's features or you simply want to edit your blog, these resources should help you. Every class and function in VSNS Lemon is documented here as completely as possible. ==== Classes ==== VSNS Lemon 4 makes use of OOP to be as simple and efficient as possible. All classes are prefixed with ''vsns_'' in order to be distinguishable from other programs. This makes VSNS Lemon more modular, as well, since you don't have to worry about function conflicts. Each class is stored in its own file in the ''classes'' directory of your blog installation. * **[[article]]** * **[[comment]]** * **[[mysql]]** * **[[page]]** * **[[search]]** * **[[upload]]** * **[[vsns]]** ==== Miscellaneous Functions ==== Almost every function is within a class; any function used by most classes goes in the [[vsns]] controller class. Still, there are a few random functions I've taken from someone else. * [[.functions:str_highlight]] - Highlights search term ==== Database Schema ==== VSNS Lemon uses MySQL tables to store its data, including the configuration data. At installation you are given the option to choose a table prefix that will go before each table. The default prefix is ''vsns'', so table names will look like ''vsns_config''. The script uses constants in the form of ''vsns_tablename'' for all of its queries to account for a custom table prefix. The value of these constants is set in ''settings.php''. Likewise, any custom queries you right should use these constants, rather than hard-coded names, so that you don't need to edit them if you change your table prefix. Refer to the **[[schema|database schema page]]** for more information and a complete list of tables.