 |
 |
 |
 |
Registered: 06/07/07
Posts: 4
|
|
|
 |
 |
 |
 |
|
 |
 |
 |
 |
|
Express Hosting
"We are the official hosting company of UBB.threads. Ask us about our free migration services to migrate your UBB.threads installation."
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#246860 - 11/14/11 08:59 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
FAQ ( phase 1 for 7.6 ) redoneThe FAQ has long been a source of useful information for new users of UBB Threads, however it has been a nightmare for novice board owners to both modify and add to. Step one for 7.6 has been to make the faq.tpl file much more readable and easy to understand. You now have the option of editing right in the template and adding new FAQ entries, since the template is simple. Example of a FAQ entry in faq.tpl is: <div class="tdheader faq-hdr"><img class="faq-sh" src="{$to}" />Question</div>
<div class="invis alt-2 faq-body">Answer</div>( compare it to how ugly the code was before and you will appreciate the simplicity ) the only thing to do is to modify the 'Question' and it's 'Answer'. Gone are the id="expandy-0" etc and having to know to add it to the initialization script. As a board admin, you had to know javascript to do anything meaninful in the FAQ section, but not anymore. If you simply copy/paste the template, the jQuery will automatically pick up on a new FAQ entry and hook it into the system. Additionally, I've added quite a few CSS classes that can enhance the look and feel of each FAQ entry. Before, we were relegated to 'tdheader' and 'alt-1' with no flexibility. new CSS classes are: faq-hdr, faq-body. If you don't use them, the FAQ will look as it has always looked. I've also added the toggle_open.gif and toggle_closed.gif images, instead of the [+] and [-] hardwired text. Additionally, you aren't forced to click on the image, but instead you can click anywhere on the Question row to toggle open/closed the Answer content. Example of my dark red theme below: Cursor is a pointer anywhere along the row  When clicked, a jQuery .slide() effect is used to smoothly slide out the hidden content  --- Phase 2: for 7.7+ -- I intend to suck all these language strings into the DB and have an Admin Cpanel FAQ editor to make it even easier...
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247128 - 12/06/11 07:10 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Reduced screen refreshes, using more AJAX( note: i previewed this 2 posts above, but refined the interaction a bit, hence the rehash / new screenies ) I'll give you one example, the just list the areas where AJAX is now used. The pictorial example is 'Mark all read'  When clicked a dialog box fades in with the familiar verbiage  Upon clicking, the AJAX kicks in and does the marking all read  And a graceful fading out return ( ala Facebook style, where you don't have to wait, but can click to speed up the return ) to exactly where you were before the operation. In the past, you were forced to 3 refreshes: 1. initial screen 2. click, then see status screen 3. redirect to main forum list, regardless of where you were This idea now also applies to: - My Cookies
- Adding / Removing watched Users
- Adding / Removing watched Forums
- Adding / Removing watched Topics
- .... and much more
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247165 - 12/08/11 12:47 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Private Messages cleaned up big timeThe Private messaging system has worked, but there have always been issues with the formatting of the list ( viewmessages ) and the actual PM ( viewmessage ) All of the formatting is now much cleaner and fits in line with their counterparts ( postlist, showflat ). We've lived with some pretty crappy formatting, that was never done right. It was sorta just thrown together as a quickie clone of forum, topic display, cut down. Additionally, for the message list, you now can click on the last reply to go the the end.  The New private message is a form button and fits in with themes, versus an innocuous looking link that was hard to notice.  The unread by has now been pulled up into the button bar line, since i removed a lot of buttons that really had no use at all.  I've added the editor to the quick reply area now, so there is no need for 'switch to full reply' in a PM anymore either. AJAX confirmations are also replacing the old 2 or 3 screen refresh mode that has been around forever.
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247199 - 12/10/11 03:24 AM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
More gallery cleanup on aisle 3Galleries never have been done right. There are too many things that were wrong with them to detail here, but they are getting a makeover Another thing I've done now is to clean up the thumbnails. You can set thumbs to intelligently make a square thumb from any image, rather than rely on CSS to resize at browser time. This is hard to explain, but might best be shown in some pictures below: Below is a square thumb  Click on the image and you see a landscape full size  Thumbs fit nicely in rows / columns now  You can demo it ( as a guest ) Here to see it in action. There is still more to do, but this was one pet peeve of mine. I've also laid the groundwork for the CSS geeks to simply add some styling on the :hover for the thumbs to do effects like you can see HereSubtle, but kinda nice too
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247213 - 12/10/11 07:04 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Cleanup / bug fixes
Ubbthreads has long had a lot of waste in the display of various pages. The 'user_fields' were duplicated a lot of times unnecessarily, when user.inc.php would grab the field by default.
The admin section was most notorious for this as well.
Additionally, the cryptic 't1' and 't2' designations for user and user_profile tables were used instead of something more meaningful like maybe oh...... u and up ?
This has all been cleaned up and there are now a lot of pages that will run much more efficiently, because we aren't querying multiple columns, multiple times per page load.
Also, the hard wired __LINE__ and __FILE__ variables passed to the queries for error messages are all gone, because php has a function ( debug_backtrace ) that does this already.
Another thing that was done, was to use do_query, instead of do_placeholder_query where obvious. HUGE time saver here!
Bottom line: efficiency, cleanup were added while quite a few bugs were removed..
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247295 - 12/17/11 10:02 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Feature + Bugfixes: Calendar eventsThis is another part of UBB that needed some love. There were quite a few bugs that were cleaned up. Just a couple were: 1. add event did censor, but edit event didn't 2. you could monkey with params to delete things you shouldn't be allowed to 3. add event had no real editor 4. no consistency across all forms ( edit, add, delete ) 5. no preview on add This has changed... Add event has the proper markup panel. I also changed the pulldowns to radios for easier selection. the 'Type' is a hidden field if the user isn't allowed to edit Public events  All events take you back to the event list for the day you were editing, adding, deleting -- instead of the big calendar view. this makes more sense anyway.  Updating event gives status ( upper right ). Matter of fact all event actions have a status that is CSS style-able as well.  Consistency and cleaner code is the result here.. Another thing is that all calendar event operations go thru one place ( calendarevents.inc.php ) -- before it was strewn thru 6 different ones and they were all dissimilar in the way they handled things. This will make it easier to drop in a new editor in future versions ( can you say tinyMCE ?  )
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247300 - 12/18/11 02:01 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Feature: Remove all the copyright baggage from each file and put into ONE copyright.txt in ubb rootWe've carried around a huge copyright header in every script file that was unneeded to maintain proper copyright info. Additionally, whenever things changed, all those headers had to be modified. Now, the copyright is in one file and covers all files underneath ( excluding the add on libraries -- those are mentioned as well however ) For modders, this was a HUGE pain in the ass when running compares. Now, the headers are short, sweet and even more meaningful ( ie: i give you a blurb on WTF the file does! ) Every script and lib file has a consistent header like:
<?php defined("UBB_MAIN_PROGRAM") or exit;
Templates are also consistent like: {*
Version: 7.6
Purpose: Displays the Public Calendar Island
Future:
*}CSS like so: /*
Version: 7.6
Purpose: Performs 2 major functions.
1st is to set defaults for many of the elements, much like Eric Meyer's reset.css does.
2nd is to pull the inline markup that was in *.tpl files into CSS form for more flexibility
Future: As themes become less dependent ( backward compatibility ), this file will shrink.
*/and Javascript files as well... /*
Version: 7.6
Purpose: All of the legacy ubbthreads javascript into one file
Future: This will slowly dwindle away as jQuery takes over
*/ Now, with this consistent structure, it will also be possible to add automation to updates and file comparisons in the future... ( can you say more automated upgrades? -- maybe ) All in all, this just cleans up the code and makes it a better foundation for moving forward
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#247522 - 12/28/11 01:42 AM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Feature(s) - Editpost, approvepost, deletepostThe code for these 3 functions were spread out over too many files to reliably manage. I've now made all the editors and positions of the buttons consistent. A ton of code cleanup was done ( cleaned out a ton of obsolete code ). Security holes were fixed and common functions ( validation / permissioning ) were used to ensure consistency and non-corrupt databases. The number of things that could potentially go wrong are too long to list here, but we now have a more solid foundation. To take just edit post for an example: the total code size in 756 was 29K.. now with the combined / cleaner code, it is 17K and does fewer unnecessary queries as well. Smaller things, like LOCKING THE TOPIC that is about to be deleted have also been added. Before, there was a chance that a use could be replying to a topic that was about to go gonzo and produce a post that was an orphan. ( the same idea / cleanup has been applied to deleting a user -- 756 leaves stray unhooked PMs from users -- spammers -- who get deleted ) This happens on this forum all the time and is very annoying!  Anyway, for many forums, there is a desire to only make the topic subject be the subject for all replies after that. Some people change the subject and especially in flat mode, it makes no sense at all. There is now a way to configure the board to disallow this:  When a user edits any reply, they just see the subject and cannot change it.  All of the save buttons go thru a common fadeout message as well..  I really should post another 10 screens here to show all the possibilities, but this should just be considered a template for all editors now with the buttons right below the editor. Additionally all templates are chock full of CSS goodness for the stylers to go crazy with..
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#248209 - 01/27/12 09:47 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
A huge effort has gone into rewriting the look / feel of what i'd call the 'search results group'. This group consists of: - Active topics, posts, unanswered
- Watched forums, topics, users
- Search results
- User Posts, Topics
They all share a common template now, so we will see consistency going forward Five columns ( 1 optional is the left most one, depending )  Based upon how you have your preferences set, you will see a preview under the topic subject or on hover. Also, the various sub-options are now tabs, which make it more intuitive. shown below are the three active ( topics, posts, unanswered ) tabs   Also, below each set of results are the buttons and pagination. Before they were all over the place and your guess was as good as mine as to where they were and why.  You can select how you want to see your preview. 1. nothing at all 2. inline underneath 3. on hover over the subject ( after a delay now )  When you hover, a tooltip is shown with a short delay. The tooltip tracks the mouse and goes away when not hovering. This tooltip is much more friendly ( optional, btw ) then the one i originally coded up for 7.3  Tooltips can be up to 8 different styles and the admin can select what color / look, they desire to be tied to each style ( colors, light, dark etc )  You additionally have a class ( new ) called tooltip-extra, that allows you the admin / css god to override the base styles and roll your own for each style. So there are no limits, except for knowing CSS   I've also removed popup_content_header and popup_content, since they aren't needed anymore in the style. They won't hurt anything, if they are in your style, but will be removed after the 1st time you edit. No harm, no foul.. I will be updating with another 5 posts, things that i've already done, but have no time to screenie / document / post it here.. so, just know that there are 5 more things, already done, that will be posted in the coming days.. 
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#248210 - 01/27/12 09:56 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
As a follow on to the previous post, this is for Geeks, so if you aren't real technical, it'll fly over your head. Just nod and act like you get it  Anyway, the way tooltips were done in the past violated W3C, because I hijaacked the title attribute of the anchor tag ( <a href="..." title="hijaacked preview goes here" .. ) This was doubly bad, because it added a huge amount of page weight to send stuff that is initially hidden from view. Until now............... Now, i load the tooltip structure hidden below in divs, but don't fill in the content at all. It is just a shell or 'scaffolding' per se. When the user hovers and shows 'intent' ( delay over target ).... an AJAX request is made to automajically fill in the scaffolding for that tooltip alone. I puts it into the hidden div and then displays it, when the delay times out. It also caches the result, so there is no double / triple call for the same tag. This saves time / resources and bandwidth and is the way it should have been done along... My bad 
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
#248211 - 01/27/12 10:15 PM
Re: New Features + Bug Fixes for 7.6 ( implemented )
[Re: SD]
|
|
Registered: 04/19/07
Posts: 4056
Loc: SoCal, USA
|
|
Another Geek post, with no pictures. I seriously overhauled the user class, to abstract the database fields into the object. What was there before was a mixture of an array ( $user ) and an object ( $userob ). For a newbie developer, this wasn't very obvious to deal with. Regardless, the other thing that has always been lacking is abstraction. There were certain hard coded ways Rick did things and you had to know how the DB was setup. Now, you don't.... Before you had to do something like: if ($user['USER_MEMBERSHIP_LEVEL'] == 'Administrator') doSomething();
All well and good for those in the know, but it really made it so there were only 2 or 3 peeps who 'got it'. And if i showed you how a Mod or globalMod was determined, it is even more obscure with a preg_match.. Now, the code is simply: if ($me->isAdmin) doSomething();
or
if ($me->isMod) doSomething();
or
if ($me->isAnyMod) ... etc etc..
You don't care what the DB value is, because the user class shields you from the DB layer.. This is just one example of about 30 or more things that were changed to make it easier for both the developer ( modder, plugin maker ) as well as efficient code execution Additionally, all fields in the DB that should have had a default value for the user profile in particular, now DO! I don't know how many times i see stupid code where we have to wonder if a database value is set and take the configuration value if it isn't, when it would have been much simpler to have a default. Like posts per topic or topics per page for example... DB field lengths are also cut down to proper size. If it is a simple yes/no value, then i use 0, 1, with it abstracted. This makes DB record fetching much more efficient overall. It also fixes BUGS!!! the email user when getting a PM always gets hosed in 7.5.6 and below, because the admin code uses Yes/No for the value and the script side uses On and anything NOT On... egads... now it is simply $me->notifyPM, and the coder has no clue and doesn't care what the value is ( yes, it is 0, 1 now ) Many more changes to the underlying engine have been made. Like lower case table names, for example. This allows going to/from linux/windows servers a no brainer. ( note: why you would go TO a windows server for ubbthreads is beyond me however  . stay in unix, if you have a choice!! ) All in all, a TON of time was spent just cleaning up junk... the scripts directory in 7.5.6 had 129 files. the scripts directory in 7.6 has 98 and will be less when i'm done. Same for the templates/default directory ( approximate same ratio ) Oh and surprise: there are even comments in the headers to say what the hell the file does and the filenames have been renamed to kinda be more logical... example 'addaddress.inc.php' -- take a guess what it did.. yup.. no semantic meaning... now it is included along with other files into one file called: ... mywatches.inc.php ... kinda more meaning there... bla bla bla... essentially, all this abstraction allows us to make proper DB changes that are needed to move forward without overhauling the code each time. The code stays the same and just the ONE FILE ( class.user.php ) changes to re-abstract the new DB to all the scripts... what i did for the user class has also been done for the html, mysql, bbcode and mysql classes. oh, and speaking of bbcode.. there was NO reason to include that file every time in ubbthreads, when the html class was the only one that used it. now, it is only loaded when needed. That is one HUGE class that isn't lugged around anymore. Same goes for the mailer class... use it when you need it.. too much more rambling to go here, but suffice to say, the code is much more streamlined, readable, commented AND SECURE!. ( all variables are sanitized.. they weren't before... yes, there are still obscure issues with 7.5.6 security and have been since 7.0 ) bottom line.. a LOT has been done and i can see the light at end of tunnel to beta... hang in there... i have a couple more picture based posts to follow in the coming week 
|
|
Top
|
|
|
|
|
 |
 |
 |
 |
|
|