Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

[software development] File exchange software

#45
Thanks, I'll be sure to continue with regular updates. Big Grin

I've made a few additional theme related improvements, although I haven't done anything particularly major besides fix a few glitches since the last screenshot. I do plan on overhauling the theme again, but for now, the look and feel will suit development for a while. My main focus today has been to get the comments system to work properly, and to get the edit page forms to work properly. There is quite a lot of debugging involved, but neither of these two core functionality features have really worked properly, and it's about time to fix that. I'd like to make the display pages a lot nicer as well. I'll be sure to post some screenshots once the comments and discussion systems work! Big Grin

Also, I've drawn up a hopefully final framework for hooks. Hooks will be divided into two categories.

Page Hooks
The $page class will contain all functions related to page handlers, menus, blocks, notifications, error messages, and more. Anyone who is familiar with MyBB can tell you that adding a menu link to the navbar requires a manual edit to the HTML templates to add the link. Filecave will have no such requirement, as the menu system will be very easy to hook into, allowing menus to easily be edited without the need for editing any HTML templates. A similar concept will go for page blocks, notifications, etc... The final goal is to make it completely unnecessary to apply HTML template edits for the vast majority of "simple" addon modules and plugins.

Module Hooks
Module hooks are simply event-based hooks in the code. At certain points in the code, Filecave will check to see if a plugin has tried to add a hook. If so, it will execute the hooks. Module hooks work almost exactly like MyBB hooks do, although Filecave will use callbacks instead of procedural variable functions, allowing for a little more flexibility with object oriented code. Of course the major sacrifice is that arguments won't be able to be passed by reference due to a PHP limitation with call_user_func, which powers module hooks, but it's a sacrifice worth making for increased object oriented support. (No, not everything will be object oriented in Filecave, but the modules themselves will in fact be heavily object oriented if I stick to my existing plans. Tongue )

The vast majority of this has already been coded and implemented. The only thing that is really left is to organize $page hooks into one class, which won't be difficult to do. Stay tuned for additional updates!

Templates
The templates engine has not been coded yet. I'm slowly drawing up plans for a template engine, which will be exciting. Most of the templates will be templates for very small elements, and not necessarily for entire pages. (Except for the header, footer, etc...) The reason for this is that pages will be generated with a block-based algorithm that generates the header and the footer, and then adds blocks where needed. I'd like to get this system to function similarly to a drupal-like block system, although don't get too excited, the front end won't be nearly as exciting. Tongue

None of the template engine work has been completed yet. I'll post updates once more coding goes towards the template system. Once that is done, however, pretty much anything in the code will be able to be hooked into and modified with only a few small lines of code, allowing for a great deal of customization potential and for plugins to be made without core file edits.

Reply


Messages In This Thread
RE: [software development] File exchange software - by lookforuu - September 20th, 2013 at 6:34 PM
RE: [software development] File exchange software - by Acko - January 29th, 2014 at 7:49 PM
RE: [software development] File exchange software - by Acko - January 31st, 2014 at 12:02 AM
RE: [software development] File exchange software - by brian51 - February 18th, 2014 at 1:20 AM
RE: [software development] File exchange software - by Darth-Apple - February 18th, 2014 at 7:46 PM



Users browsing this thread: 4 Guest(s)

Dark/Light Theme Selector

Contact Us | Makestation | Return to Top | Lite (Archive) Mode | RSS Syndication 
Proudly powered by MyBB 1.8, © 2002-2024
Forum design by Makestation Team © 2013-2024