Documentation

Change log

  • Version 1.6.0 18 Dec 2016

    See change log : Github

  • Version 2.1.0 14 Oct 2016

    New Functionality for Application base classes

    1. It is possible to create more base classes for inherit.
    All Application base classes will be included automatically.

    Example: Create /application/base/user_addon_base.class.php With class name: class user_addon_base extends base_addon {} Then, your addon class can be defined as: class user_addon extends user_addon_base {}

    INI Library Version 1.2.1

    1. Fixed usage of array key rename.

    Compress Library Version 1.1.0

    1. New method to get and compress remote files such as external javascript APIs.

    Generator Library Version 1.1.0

    1. New method to generate number create_number().

  • Version-2.0.0 12 Apr 2016

    toKernel - Universal PHP Framework - CHANGELOG ============================================== Version 2.0.0 - 12/04/2016 -------------------------- Welcome aboard on next generation of toKernel Framework! - Professional solution to build perfect RESTFul API for your mobile applications. - Easy way to develop a project wirh Frontend and Backend access. - A lot of abilities to make modules of controllers as many as possible with splitting by your business logic and ideas. - Database abstraction layer with model development and CRUD. Let's say: so many things were changed and re-developed to make your development cycle easy and flexible! ----------------------------------------- Debugging 1. Removed debugging information from web pages bottom. Of course, we always able to see debug information in debug log files. 2. Removed debug information items "debug_mode", "debug_mode_ajax" in section [RUN_MODE] from application configuration file. Files: /application/config/application.ini /tokernel.framework/templates/debug.tpl.php Language parsing in CLI (Command line interface) mode 1. The CLI runtime accepts only English language. 2. Removed items "cli_parse_language", "cli_default_language", "cli_allowed_languages" in section [CLI] from configuration file. Files: /application/config/application.ini /tokernel.framework/lib/cli.lib.php Language parsing in HTTP mode 1. It is possible to detect browser language to set. If the value of item "http_catch_browser_language" is 1 in application configuarion file, The language of browser will be detected and set if allowed in allowed languages. 2. New item "http_catch_browser_language" added into section [HTTP] in application configuration file. Files: /application/config/application.ini /tokernel.framework/lib/url.lib.php Parsing parameters from URL 1. Functionality of parsing parameters from url as assoc (item1/value1/item2/value2) removed. It is now possible to parse parameters only as is (value1/value2/valueN). 2. Removed item "http_params_mode" from section [HTTP] in application configuration file. Files: /application/config/application.ini /tokernel.framework/lib/url.lib.php Photo Library 1. Photo file processing class library deprecated (removed) File: /application/config/photos.ini /tokernel.framework/lib/photo.lib.php Framework kernel base files. 1. Some files of base classes moved or added to tokernel.framework/base/ directory 2. Addon base class library - Version 4.0.0 3. Base database model class = Version 1.0.0 4. Module base class library - Version 3.0.0 5. Base View class - Version 2.0.0 Files: /tokernel.framework/base/addon.class.php /tokernel.framework/base/model.class.php /tokernel.framework/base/module.class.php /tokernel.framework/base/view.class.php Addons 1. Changed the way to access addons. Instead of: $this->lib->addons->some_addon; Calling: $this->addons->some_addon; This gives effect to all files of application: addons, mudules, views. 2. Method get_modules() removed from addon kernel class. 3. Addon Class constructor defined only with $params array argument, instead of more than one arguments. class user_addon extends addon { public function __construct($params) { parent::__construct($params); } } File: /tokernel.framework/kernel/addons.class.php /tokernel.framework/base/addon.class.php Modules 1. Removed the way to get module object by addon getter method. Instead of: $this->module_name->some_function(); It is required to load module object $module = $this->load_module('module_name'); $module->->some_function(); 3. Module constructor defined only with parameter $params instead of many parameters. class user_auth_module extends module { public function __construct($params) { parent::__construct($params); } } Files: /tokernel.framework/kernel/addons.class.php /tokernel.framework/base/addon.class.php /tokernel.framework/base/module.class.php Application global values access This approach is very useful to use in addons and templates. 1. Set global value to application with method $this->app->set_var($item, $value); 2. Get global value from application with method $this->app->get_var($item); 3. Get all global values of application $this->app->get_vars(); File: /tokernel.framework/kernel/app.http.class.php Error 404 - page not found 1. Now the Error 404 page will be loaded from current run mode. Each mode backend and frontend has own error 404 template file. 2. Template file has ability to use any of widget and include css and js files like other templates do. 3. Removed functionality of Error 404 from application Error handler. 4. Removed redirection of Error 404. It is now not possible to redirect to some url, if page not found. If page not found, than page not found :) 5. Removed item "redirect_404" in section [HTTP] from application configuration file. 6. Removed item "show_errors_404" in section [ERROR_HANDLING] from application configuration file. 7. If Logging 404 error is enabled, The Client IP will be logged with error message. Same for Debug log. This will log the Client IP in Debug message with Error 404 Message. File: /application/config/application.ini /tokernel.framework/kernel/app.http.class.php /tokernel.framework/kernel/e.core.class.php /tokernel.framework/kernel/e.http.class.php /application/templates/backend/error_404.tpl.php /application/templates/frontend/error_404.tpl.php Template initialization 1. It is now possible to set template name with variables. $this->app->set_template( 'user_login', // Template name array( 'screen_logo' => 'hello.jpg', 'word' => 'Hello User!' ) ); In the template file we can use values as:

    {var.word}

    Same approach works for view files loading. See bellow. Aliasing aka Routing 1. Removed Aliasing functionality with files. 2. It is now Routing functionality available with a lot of advantages. Files: /tokernel.framework/kernel/routing.class.php /application/config/routes.ini Pagination library 1. New Version of pagination library Veersion 2.0.0 File: /tokernel.framework/lib/pagination.lib.php Data filtering class library Version 2.0.0 1. It is now possible to get Global arrays such as _PUT and _DELETE for RESTFul API development. $this->lib->filter->put('item_name'); $this->lib->filter->delete('item_name'); File: /tokernel.framework/lib/filter.lib.php a Data Encryption library Version 1.0.0 1. Simple encryption library implementation of AES-256 encryption in CBC mode that uses PBKDF2 to create encryption key out of plain-text password and HMAC to authenticate the encrypted message. File: /tokernel.framework/lib/encryption.lib.php Base classes for addons, modules, views, models 1. In the application/base directory we have all possible base classes to extend for addons, modules, views, models 2. It is possible to pass this option and just define class as before like: class test_addon extends addon {} This will extend main parent adon class from framework. However, the main goal to define an addon class and extend to base is to make some development/additional base functionality for adon and extend it: class test_addon extends base_addon {} where the base_addon class is customized depends on your needs. Same feature available for modules, models, views. Directory: /application/base/ Files: /application/base/base_addon.class.php /application/base/base_model.class.php /application/base/base_module.class.php /application/base/base_view.class.php Kernel Hooks vile version 1.1.0 1. It is now $this->addon object accessible in each application hook file. File: /tokernel.framework/kernel/hooks.class.php Predefined constants 1. Some constants removed due to the state of unused. TK_ERROR_404 TK_AMP TK_SP TK_PPREV TK_PNEXT TK_COPY 2. Some new constants added for libraries usage TK_APP_INI TK_ROUTES_INI TK_DB_CONFIG_INI TK_EMAIL_CONFIG_INI TK_CACHING_CONFIG_INI 3. Renamed constants TK_APP_PATH -> TK_ROOT_PATH TK_CUSTOM_PATH -> TK_APP_PATH TK_CUSTOM_DIR -> TK_APP_DIR File: /tokernel.framework/config/constants.php Source code compression library Version 1.0.0 1. Compress and combine the list of files to one. This library is very useful if you want to compress and combine more than one javascript or CSS files to cache. File: tokernel.framework/lib/compress.lib.php Multilanguage support 1. From toKernel version 2.0.0 Languages supported only by application. Addons and modules not supporting own language files. However the language usage is same for addons, modules and view filess. Just in case, the method language() recalling the application's language() method insteadof own. Files: /tokernel.framework/kernel/addons.class.php /tokernel.framework/base/addon.class.php /tokernel.framework/base/module.class.php /tokernel.framework/base/view.class.php New functionality of Cache libraries 1. It is now possible to get instance of new cache library defined in /application/config/caching.ini 2. New Type of caching library "apcucache" Version 1.0.0 Files: /application/config/caching.ini /tokernel.framework/lib/cache.lib.php /tokernel.framework/lib/cache/cache_base.lib.php /tokernel.framework/lib/cache/apcucache.lib.php /tokernel.framework/lib/cache/filecache.lib.php /tokernel.framework/lib/cache/memcache.lib.php Database abstraction layer 1. Database abstraction layer: New approach to work with databases For now supports: MySQL, PostreSQL, Sqlite This is another kind of database modules development and database access. 2. It is possible to work with many instances of database layers defined in /application/config/databases.ini 3.Ability to create models for Database access /addons/{addon_name}/models/{model_name}.model.php 4. Models can be located in subdirectories. 5. Models can be extended 6. Models can be loaded with method load_model() as the modules and view loading. Files: /application/config/databases.ini /tokernel.framework/base/model.class.php /tokernel.framework/lib/db.lib.php /tokernel.framework/lib/db/db_base.lib.php /tokernel.framework/lib/db/mysql/db_mysql.lib.php /tokernel.framework/lib/db/mysql/db_mysql_query_result.lib.php /tokernel.framework/lib/db/postgresql/db_postgresql.lib.php /tokernel.framework/lib/db/postgresql/db_postgresql_query_result.lib.php /tokernel.framework/lib/db/sqlite/db_sqlite.lib.php /tokernel.framework/lib/db/sqlite/db_sqlite_query_result.lib.php New Version of email libraries 1. It is now possible to use more than one type of email protocols in one application depends on configuration. Email configuration file: /application/config/email.ini 2. Now, each type of email protocol have it's own library Supported protocols: phpmail, sendmail, smtp 3. It is possible to totally debug email sending which can be defined in configuration section. Files: /application/config/email.ini /tokernel.framework/lib/email.lib.php /tokernel.framework/lib/email/email_base.lib.php /tokernel.framework/lib/email/phpmail.lib.php /tokernel.framework/lib/email/sendmail.lib.php /tokernel.framework/lib/email/smtp.lib.php Routing instead of aliasing. 1. In this new version of toKernel framework we have a new approach of URL parsing and routing. Routing defined and explained in /application/config/routes.ini Files: /application/config/routes.ini /tokernel.framework/kernel/routing.class.php /tokernel.framework/lib/url.lib.php New type of widget definition 1. Ability to define widgets in template file to access directly to module method. Call method "c" of Module "b" of addon "a" Instead of call addon's method only. Another example, where the module file located in "widgets" subdirectory: Files: /tokernel.framework/lib/template.lib.php Application global values set and get in HTTP mode 1. Methods: set_var(), get_var(), get_vars() allows to get and set application global values. For example: it is possible to set value in some addon or module and get it in template file. Files: /tokernel.framework/kernel/app.http.class.php Template with defined values 1. When defining application main template in HTTP mode, it is possible to define values Example: $this->app->set_template( 'templatename', array( 'var1' => 'val1', 'var2' => 'val2' ) ); This values can be used/echoed in template file as {var.var1}, {var.var2} Files: /tokernel.framework/kernel/app.http.class.php /tokernel.framework/lib/template.lib.php Global values in templates and view files 1. Application default and user defined values accessible in templates and view files. Application default values: Base url: https://tokernel.com/framework/ Base url with language: https://tokernel.com/framework/en/ App URL: {var.app_url} Theme name: green2015 Theme URL: https://tokernel.com/framework/tokernel.website/themes/frontend/green2015/ Theme images URL: {var.theme_images_url} Theme js url: {var.theme_js_url} Theme css url: {var.theme_css_url} Uploads url: https://tokernel.com/framework/uploads/ Language prefix: en Date: 19/04/2024 Year: 2024 Month: 04 Day: 19 2. Also it is possible to define value in app->set_template() and this->load_view() functionality. 3. In any part of code where the application instance is available as $this->app we can set: $this->app->set_var('name', 'David'); and in any view file or template file output the values as {var.name} Files: /tokernel.framework/kernel/app.http.class.php /tokernel.framework/lib/template.lib.php /tokernel.framework/base/view.class.php Location of Modules, Views, Models 1. Models, Modules, View files can be located in subdirectories depends on your needs. Template library Version 2 1. It is possible to load and parse template in any part of code. Example: $template_obj = $this->lib->template->instance( 'template_name', array ( 'var1' => 'val1', 'var2' => 'val2', ) ); $complete_buffer = $template_obj->run(); echo $complete_buffer; Files: /tokernel.framework/lib/template.lib.php New Generator library Version 1 1. New experimental library to generate random data like: Username, email, password, host, etc... File: tokernel.framework/lib/generator.lib.php End of file

  • Version 1.5.1 06 Mar 2016

    HTML Library Version 1.2.0

    1. Function attach_file() validates file formats for only js or css files.

    2. Is able to print files for only attached javascript file

    3. Is able to print files for only attached css file

    File: /tokernel.framework/lib/html.lib.php

    MySQL Library Version 2.0.2

    1. Small bugs fixed.

    File: /tokernel.framework/lib/mysql.lib.php

    Date Library Version 1.3.0

    1. New method to_timestamp()
    Convert any type of date to Unix timestamp.

    2. New method is_intersects()
    Check if a range of dates intersects to each other.

    3. New method has_weekend()
    Check if a range of date has weekends in.

    File: /tokernel.framework/lib/date.lib.php

    Session Library Version 1.2.0

    1. Configurable Session save path in application configuration file. [SESSION] session_save_path =
    Empty value assume, that the session path will not be configured.

    1.1 Removed '.../application/session/' directory.

    2. New function set_section()
    Set array as session value

  • Version 1.5.0 12 Apr 2015

    New Shopping cart library

    1. Ability to work as e-commerce shopping cart with a lot of advantages.

    File: /tokernel.framework/lib/shopping_cart.lib.php

    New Array library

    1. Process an array with useful functions.

    2. Check and find items in array.

    File: /tokernel.framework/lib/array.lib.php

    URL library. Version 2.4.0

    1. New function clean_query_string_arr() to parse and fix query string array.

    File: /tokernel.framework/lib/url.lib.php

    Pagination library. Version 1.0.6

    1. Fixed link creation string.

    File: /tokernel.framework/lib/pagination.lib.php

    MySQL library. Version 2.0.1

    1. Fixed the error function usage.

    File: /tokernel.framework/lib/mysql.lib.php

    Filter library. Version 1.4.1

    1. Changed the function clean_data() to use array library.

    File: /tokernel.framework/lib/filter.lib.php

    Data library. Version 1.4.1

    1. Moved function function is_assoc(), function array_key_rename(), array_key_pos() to new array library.

    File: /tokernel.framework/lib/data.lib.php

    Commant Line Interface (CLI) library. Version 1.0.6

    1. Display current year in function output_usage().

    File: /tokernel.framework/lib/cli.lib.php

    Alias library. Version 1.2.0

    1. New function get_all(). Returns all existing aliases.

    File: /tokernel.framework/lib/alias.lib.php

    Addons library. Version 1.0.6

    1. Fixed function all().

    File: /tokernel.framework/lib/addons.lib.php

    Addon class in kernel. Version 3.4.0

    1. Fixed log object loading in __constructor().

    2. New function get_modules() returns all existing modules of loaded addon.

    File: /tokernel.framework/kernel/addon.class.php

    Changed application access level

    1. Added new file types to deny list

    2. Changed deny list to be short.

    File: /.htaccess

  • Version 1.4.0 22 Oct 2014

    Database library and connection options.

    In the databases file, it is now new option to set charset for each database connection group:

    connection_charset=utf8 File: /application/config/databases.ini

    Addons class in kernel. Version 3.3.3

    New logic of modules class creation.

    class name should be
    class {addon_id}_{module_id}_module extends module {}
    instead of
    class {module_id}_module extends module {}

    So each time it is possible to create modules with same name for different addons.
    The modules usage is same as before.

    File: /tokernel.framework/kernel/addons.class.php

    Removed deprecated functions from HTTP and CLI classes from kernel.

    HTTP class Version 1.3.0
    CLI class Version 1.2.0

    Files: /tokernel.framework/kernel/app.cli.class.php
    /tokernel.framework/kernel/app.http.class.php

    All libraries uses cli or url to get action, id_addon, params, instead of app.

    Module class in kernel. Version 2.3.4

    Fixed view file loading

    File: /tokernel.framework/kernel/module.class.php

    Addons library. Version 1.0.5

    Little fix. Sorting addons list before return in function all()

    File: /tokernel.framework/lib/addons.lib.php

    Cache library. Version 3.1.0

    New method stats(). Get cache statistics.

    Files: /tokernel.framework/lib/cache.lib.php
    /tokernel.framework/lib/cache/filecache.lib.php Version 2.1.0
    /tokernel.framework/lib/cache/memcache.lib.php Version 1.1.0

    File library. Version 1.3.5

    Fixed methods upload(), format_size()

    File: /tokernel.framework/lib/file.lib.php

    Filter library. Version 1.4.0

    New method clean_url_string(). Clean any string to preperly url

    File: /tokernel.framework/lib/filter.lib.php

    New Form validation library. Version 1.0.0

    This Library uses application languages.

    File: /tokernel.framework/lib/form_validation.lib.php

    INI library. Version 1.2.0

    New method file_is_writable().

    File: /tokernel.framework/lib/ini.lib.php

    LOG Library. Version 1.1.0

    New method file_remove()

    File: /tokernel.framework/lib/log.lib.php

    URL library. Version 2.3.0

    1. New method parts(). return array of exploded url parts.
    2. New method set_action(). Set action to lib with overriding defined action.

    File: /tokernel.framework/lib/url.lib.php

    Valid library. Version 1.3.0

    1. New method url(). Check if valid url.
    2. New method date_iso(). Check if valid date with iso standards.

    File: /tokernel.framework/lib/valid.lib.php

    MySQL Library. Version 2.0.0

    1. Uses mysqli extension.
    2. New Method num_fields().

    File: /tokernel.framework/lib/mysql.lib.php

  • Version 1.3.1 31 Dec 2013

    Class library for working with files - file_lib v.1.3.4

    1. Fixed the method 'download()'.

    File: tokernel.framework/lib/file.lib.php

    Class library for data filtering - filter_lib v.1.3.0

    1. Return array of _GLOBALS if item is null.

    // Return string
    $name = $this->lib->filter->post('name');

    // Return cleaned _POST array
    $post = $this->lib->filter->post();
    File: tokernel.framework/lib/filter.lib.php

    Class library for pagination - pagination_lib v.1.0.5

    1. A little fix in run() method.

    File: tokernel.framework/lib/pagination.lib.php

    Class library url - url_lib v.2.2.1

    1. A little fixes in parse_params_assoc(), url() methods.

    File: tokernel.framework/lib/url.lib.php

    Addon object in kernel - addon v.3.3.0

    1. New configuration file in config dir - actions.ini

    Action call and params count (in url) for each addon can be limited and defined in actions.ini

    [view_article]
    params_min=1
    params_max=1
    params=id

    This section assumes that the action 'view_article' cam contain only 1 url param (params_min=1, params_max=1) and the name of parameter is 'id'.

    [articles]
    params_min=0
    params_max=3
    params=page|order|isfeat

    This section assumes that the action 'articles' can contain 0 - 3 params.
    And the only possible params is 'page', 'order', 'isfeat'.

    2. New method in addon object

    bool action_allowed(string action)
    Returns true if the actions.ini exists, and the action section also exists.

    3. New method in addon object

    bool params_allowed(string action, array params)
    Return true if params exists for action.

    4. New method in addon object

    bool params_count_allowed(string action, int params count)
    Return true if min, max range is equal with url params count.

    If the file actions.ini not exists, all methods listed above will return true, assuming that this addon not have any call limitations.

    File: tokernel.framework/kernel/addon.class.php

    View object in kernel - view v.1.2.1

    1. New method show().

    Instead of echo $view->run(); we can use $view->show();

    File: tokernel.framework/kernel/view.class.php

    Some deprecated functions

    In kernel HTTP and CLI mode, some application functions defined as deprecated and will be removed in next version.

    1. action()
    2. id_addon()
    3. alias()
    4. params()
    5. params_count()

    This functions actually defined in lib url and lib cli.

    Files:  tokernel.framework/kernel/app.cli.class.php
    tokernel.framework/kernel/app.http.class.php

  • Version 1.3.0 29 Mar 2013

    Content caching class libraries - cache_lib v.3.0.0, filecache_lib v.2.0.1, memcache_lib v.1.0.0

    New 'memcached' caching method released.
    It can be configured from application/config/application.ini section: [CACHING]

    Files:  tokernel.framework/lib/cache.lib.php
    tokernel.framework/lib/cache/filecache.lib.php
    tokernel.framework/lib/cache/memcache.lib.php

    System/Memcached and PHP Memcache extension required for caching with memcache.


  • Version 1.2.6 29 Jan 2013

    Log class library - log_lib v.1.0.4

    1. All massages in method write() will be logged as is, without cleaning new lines.
    2. New default argument to method write() allows to pass date and application run mode before messages.

    File: tokernel.framework/lib/log.lib.php

    URL parsing library - lib_url v.2.2.0

    1. New method param_exists() return boolean (true) even if url parameter exists but empty.

    File: tokernel.framework/lib/url.lib.php

    Error and Exception handling - v.1.2.0

    1. Now displays Baktrace information on error page in development mode.

    Files:
    tokernel.framework/kernel/e.cli.class.php
    tokernel.framework/kernel/e.core.class.php
    tokernel.framework/kernel/e.http.class.php
    tokernel.framework/templates/error.tpl.php
    tokernel.framework/templates/error_404.tpl.php
    tokernel.framework/templates/warning.tpl.php

    Library loader class - lib v.1.0.1

    1. Fixed library file loading (require -> require_once).

    File: tokernel.framework/kernel/lib.class.php

    Data filtering class library - filter_lib v.1.2.0

    1. New method server() returns $_SERVER vars.

    File: tokernel.framework/lib/filter.lib.php

    Main application configuration file

    1. Renamed application/config/tokernel.ini to application/config/application.ini


  • Version 1.2.5 01 Dec 2012

    Caching class library - cache_lib v.2.0.0

    1. Now, it is possible to use multiple instances (as subdirectories) of cache.

    File: tokernel.framework/lib/cache.lib.php

    URL parsing library - lib_url v.2.1.1

    1. Fixed the method set_id_addon().

    File: tokernel.framework/lib/url.lib.php


  • Version 1.2.4 28 Nov 2012

    Class library for data filtering - filter_lib v.1.1.5

    1. The directive 'magic quotes' is deprecated.
    2. deprecated method strip_slashes().

    File: tokernel.framework/lib/filter.lib.php

    Framework loader - v.2.0.2

    1. Removed string - ini_set('magic_quotes_runtime', false);

    File: tokernel.framework/tokernel.inc.php

  • Version 1.2.3 14 Oct 2012

    Class library for working with MySQL Server - mysql_lib v.1.3.3

    1. Fixed method reconnect().

    File: tokernel.framework/lib/mysql.lib.php

    Class library for data filtering - filter_lib v.1.1.4

    1. Fixed methods strip_slashes() and clean_data()

    File: tokernel.framework/lib/filter.lib.php

  • Version 1.2.2 19 Sep 2012

    Class library for working with files - file_lib v.1.3.3

    1. Fixed the method 'ext' where checking the file extension.
    2. Fixed the method 'ls' where checking the file extension.

    File: tokernel.framework/lib/file.lib.php

    Class library for working with MySQL Server - mysql_lib v.1.3.2

    1. Added ability to connect with user selected port (in databases.ini configuration file).
    2. Refactoring of method reconnect()
    3. Fixed the bug in method count() at query building state.
    4. Added new $exp parameter to method count() which gives ability to set query expression 'AND' or 'OR'

    File: tokernel.framework/lib/mysql.lib.php

    Templates interpretation library - template_lib v.1.0.6

    1. Fixed method interpret() for some comment like tags.

    File: tokernel.framework/lib/template.lib.php

    Platforms reference file.

    1. Added "Windows 8" defination.

    File: tokernel.framework/config/platforms.ini

  • Version 1.2.1 09 Aug 2012

    Class library for working with MySQL Server - mysql_lib v.1.3.1

    1. Changed the functionality of benchmark with count() function.
    2. Fixed typo in the function fetch_all_assoc(). $row instead of $arr.

    File: tokernel.framework/lib/mysql.lib.php

    Pagination class library - pagination_lib v.1.0.4

    1. Corrected the generation of the page url.
    2. Changed the indexing method to pages instead of records.

    File: tokernel.framework/lib/pagination.lib.php

    Session class library - session_lib v.1.1.0

    1. New method regenerate(). Regenerate session id to discard current session data (maybe old) and start over.

    File: tokernel.framework/lib/session.lib.php

    Photo file processing class library - photo_lib v.1.0.1

    1. Some fixes in garbage collection.

    File: tokernel.framework/lib/photo.lib.php

    URL parsing library - lib_url v.2.1.0

    1. Define application language from client browser if not defined in url string.

    File: tokernel.framework/lib/url.lib.php

  • Version 1.2.0 14 Jun 2012

    Framework loader - v.2.0.1

    1. Fixed definition of constant TK_CUSTOM_PATH.
    When the constant TK_CUSTOM_DIR in index.php is empty, TK_CUSTOM_PATH will be defined without double slashes.

    File: tokernel.framework/tokernel.inc.php

    View base class - v.1.3.0

    1. Created new magic method __isset(), for checking whether a variable has been defined.
    2. Created new magic method __unset(), which gives ability to unset view object values.

    File: tokernel.framework/kernel/view.class.php

    Application kernel for http mode - v.1.2.5

    1. If the requested action for addon lib (controller) does not exist, the application will log that issue as an Error 404 (Page not found) instead of a Regular method missing error.

    File: tokernel.framework/kernel/app.http.class.php

    New Photo file processing class library - photo_lib v.1.0.0

    1. Resizing, caching and more...

    File: tokernel.framework/lib/photo.lib.php,
    File: application/config/photos.ini

    Class library for working with MySQL Server - mysql_lib v.1.3.0

    1. New method fetch_all_assoc(string query[, bool benchmark])
    Return array of all records by query string
    2. New method fetch_all_object(string query[, bool benchmark])
    Return array of all records as objects by query string.

    File: tokernel.framework/lib/mysql.lib.php

  • Version 1.1.3 28 May 2012

    MySQL class library - mysql_lib v.1.2.2

    1. Changed instance() method logic. Calling destructor for new cloned object.

    File: tokernel.framework/lib/mysql.lib.php

  • Version 1.1.2 22 May 2012

    URL parsing library - lib_url v.2.0.7

    1. Fixed bug at alias parsing time. Now, it is parses alias with url params properly.

    File: tokernel.framework/lib/url.lib.php

  • Version 1.1.1 09 May 2012

    Application kernel for http mode - v.1.2.4

    1. Methods app_url() and theme_url() returns correct url if the constant TK_CUSTOM_DIR is empty.

    File: tokernel.framework/kernel/app.http.class.php

  • Version 1.0.7 10 Apr 2012

    Data filtering class library - filter_lib v.1.1.3

    1. Methods encode_html_entities() and decode_html_entities() now accepts mixed values for data - array | string.

    File: tokernel.framework/lib/filter.lib.php

    Version 1.1.0 - 04/12/2012

    MySQL class library - mysql_lib v.1.2.1

    1. Method fetch_assoc() returns false if mysql query triggered an error or warning.

    File: tokernel.framework/lib/mysql.lib.php

    New class library client_lib - v1.0.0

    1. Collecting information of the OS, browser, mobile device of the client.

    File: tokernel.framework/lib/client.lib.php
    File: tokernel.framework/config/platforms.ini (required as reference)

  • Version 1.0.6 05 Apr 2012

    Templates interpretation library - template_lib

    1. Changed the string "TK_NL" to " "

    File: tokernel.framework/lib/template.lib.php

    Application kernel for http mode.

    1. Appended URL arguments to function url() for caching process in application run() method.

    File: tokernel.framework/kernel/app.http.class.php

    URL parsing library - lib_url

    1. Changed associations of url values assoc array in function parse_params_assoc().
    Now, it is possible to receive last item from url even if it is empty.

    File: tokernel.framework/lib/url.lib.php

  • Version 1.0.4 21 Mar 2012

    Application kernel for http mode.

    1. Fixed method call $thid->get_mode() in kernel/app class.

    File: tokernel.framework/kernel/app.http.class.php

    Application kernel for cli mode.

    1. Fixed addon's action checking process for CLI mode.

    File: tokernel.framework/kernel/app.cli.class.php

  • Version 1.0.5 31 Mar 2012

    Data processing class library - data_lib v.1.4.0

    1. New method in "data" class library converts any url to html link tag.

    File: tokernel.framework/lib/data.lib.php