[div=avacblock]
Avacweb Chat Version 1.9
Well as with every release I like to give you guys a more detailed version of the changelog and my take on all the changes with a bit more detail for you, so here's the breakdown for AWC1.9 for you.
First off, I'd say the biggest change is AWC will be moving to an external site at
http://chat.avacweb.net where most of the information will be provided.
Support for AWC will still be provided in the Avacweb Chat section of Avacweb, I'll likely be keeping this thread for Updates now too. The Plug-in section will remain here on Avacweb too so that anybody can post Plug-ins. The most popular Plug-ins will be written up on the AWC Site. It is still a work in progress (I've not even finished all the pages) but I hope you all like it so far.
I'm gonna go through the changelog of Version 1.9 bit by bit for you now ...
- Merge messages option is 'off' by default.Most users didn't like having merge messages on in 1.8, so I have now made sure it is off by default. However I would like to say that merged messages look a lot better now that I have given them just a little style tweek. Either way, this option can be removed completely using the Settings controller:
http://chat.avacweb.net/settings- Options removed from avacweb_chat_config: disable_timeout, archives, auto_log_inI've explained previously why auto_log_in has been removed, because it can be added via plug-in.
disable_timeout has now become a user option rather than an admin option, so each user can choose specifically.
sound_file has also been removed because playing a sound can be done via plug-in.
Options added to avacweb_chat_config: allow_appear_offline, custom_placementThese 2 new options have been added to the config. allow_appear_offline is obvious, this just enables or disables the appear offline feature.
custom_placement should be a CSS selector, and if specified AWC will install itself within that selector... in other words this allows you to place AWC wherever you want. In a template, html page or even an element outside of template editing.
Core parts of AWC have been re-written. Including tab controller, settings controller, event controller and various functionsI really have done a lot of re-writing and improvements. Remember 1.8 is nearly a year old... so the core needed some updating. It should now be a lot easier for developers now too.
Mobile detection and easier design/layout on mobile devices. Resizability and tabs not available on mobile.The mobile version is simple for now guys, but its a start. It still needs a lot of work. However, you can improve the mobile version yourself if you want. The chat now has a classname of 'mobile' when the user is on a mobile device, so you can use this classname in your CSS to style the chat differently.
Bot messages are displayed in all tabs now not just public.Bot messages include login/logout notifications, user is away, user timeout etc... Previously these were only displayed in the public tab but now they are displayed in all tabs... only when archives is off though. Let me know how you feel about this.
Users can now ignore other users.This was a suggestions from someone and I apologise I can't remember who exactly - but I've put a system into place.
You can ignore a user by right clicking their name in the user list and selecting 'Ignore User', if you're already ignoring them you'll see 'Un-ignore User'.
When you ignore a user you won't see any of there messages in the chat. I hope to write a plug-in sometime soon that will put a strike through ignored users usernames or blur them out or something...
New command added: /ignore usernameAs another way of ignoring a user, there is a command of course. There's a command for everything... but oddly not an /unignore command lol .. woops.
The refresh rate of the chat drops the more inactive it is to preserve resources and be more efficient.This is actually a big feature I have added even though it isn't something noticeable within the interface. AWC now tracks your inactivity by checking if each refresh is different from the last. After a certain amount of unchanged refreshes it begins to drop the refresh rate... refreshing slower and slower the more inactive the chatbox is.
At normal rate the chat refreshes every 3 seconds, after 30 seconds of nobody posting, it drops to 8 seconds... no big difference.
But after a further minute and a half of nobody posting it will drop down to refreshing every 25 seconds.
After about 5 mins of no activity, it is refreshing every 45 seconds and after about 8 mins of no activity it refreshes only once every minute.
This will prevent my chat and your browser and your forum from doing unneeded work.
Big fixed regarding the lighting up of tabs.Tabs weren't lighting up correctly in 1.8, I don't know if anyone noticed lol ... but its fixed.
'onreading' event has been removed.Despite only being added in 1.8 due to the new settings controller the onreading event is redundant.
If you have any old plug-ins that use the onreading event; use this little patch to create the event:
- Code:
[panda=js]avacweb_chat_config.add_event('onsettingchange', function(e) {
if(e.data === 'reading') {
this.event.fire('onreading');
}
});
That will fire any onreading listeners.
'onsettingchange' event added - fired whenever a setting within AWC is changed; user setting or internal setting.Here's the new event from the setting controller. This event is actually very important and handles so many things within AWC; reading mode, color picker, even toggling the popup chatbox.
The event object provides the setting which has been changed in 'e.data'.
Here's an example plug-in:
- Code:
[panda=js]avacweb_chat_config.add_event('onsettingchange', function(e) {
if(e.data === 'reading') {
this.send_message( this.settings.on('reading') ? '/me has entered reading mode.' : '/me has left reading mode.' );
}
});
New settings controller and API allows for adding more settings into AWC. New custom settings will be saved and restored like the rest.I keep banging on about the new settings controller... however it is good. It will allow you to add your own custom settings into AWC... this is actually a massive opportunity in terms of plug-ins.
You can also use the settings controller for completely removing settings from API... for instance the 'strike' options seems a bit pointless... why not remove it?
New event controller allows for handlers to be removed.The internal event controller has been re-written and I've included a remove function so event listeners can be removed if needed.
[ic]avacweb_chat.event.remove('onlogin');[/ic]
New event controller is case-insensitive, aka onLoad = onload = OnloadI noticed a few people writing events like this: 'onLoad' even though I had never written them like that for AWC... that's because they wouldn't work lol... AWC would only accept lower case events like 'onload'. However the new event controller will accept anything as long as it is the right letters. OnLoad ONLOad oNlOaD ... anything will do.
User option 'sound' has been removed and AWC plays no sound - can be added via plug in.Mentioned this earlier. As well the config option being removed, the user option has been removed. But the new settings controller can add it. I've provided a plug in for it already.
New and improved default stylesheet. v1-8 classname removed from the chat button, chatbox_row class name removed and replaced with achat_row.The CSS has been given a tidy up and small re-write too. You'll find it a bit easier to follow when you read through it hopefully.
Also the previous CSS set up had tricks in to stay backwards compatible... however this new CSS is for 1.9 only so there is no backwards mess.
AWC config stylesheet is now inserted above the forum stylesheet, this gives the forum stylesheet priority.As requested, the AWC CSS is now placed 'above' your forums CSS in the page. This
should mean your forums CSS is given priority and you don't need to put !important after everything.
User tabs are now deletable and users can leave a user tab similarly to leaving a PM tab.I was asked plenty of times "How do you delete a tab?" and the answer was basically if it isn't a PM tab... you can't.
Well now you can, you can delete a tab that has been opened within the chat. The only tabs you can't close are those defined in the config and the Public tab.
So you know though, when you close a tab - you haven't completely deleted the tab, you have only left that chatroom... it is still open for everybody else who was in it.
New user option added 'Appear offline', Users can now appear offline, whilst still being able to send and view messages. This removes the 'Away' feature however.In the user option box the users now have the choice to appear offline. (This option should only appear when 'allow_appear_offline' is enabled in the config... but there is a bug, this option is appearing regardless of what you have set in the config. I'll sort it out.)
The appear offline feature works off of the Away feature... so in order for this to work, the away feature has to be lost.
The /away command won't work while appearing offline is activated.
Users can still send messages whilst they are appearing offline.
Currently the offline users are still counted in the user count in the chat button ... this is a mistake which I need to sort too.
There is some CSS I'd recommend adding to your forum if you plan on having the appear offline feature enabled: [ic]h4.away, h4.away + ul { display: none; }[/ic]
New command added /offline - This makes the user appear offline temporarily until they send their next message.This is sort of like the appear offline option however it is not permanent. The /offline command only makes them appear offline until they send a message.
The message box can now be enlarged in to a large text box for writing longer messages.I think this is a simple but really neat feature. Next to the message box there is a little Up arrow... click it and you'll turn that tiny message box into a nice big textbox now. Perfect for copying larger amounts of text in and writing longer messages.
User 1, aka the founder will see a new button in the bottom left and will receive updates from the AWC server.You'll see a little '!' button if you are the founder... it will glow red when there are important updates about AWC. Click it and you'll see some information.
It seems people would like this for more than just the founder... so I'll sort that out for you via plug-in.
Well that's all the changelog. I hope its goos enough for you guys.
In my opinion, I really like 1.9
Despite all the bugs that have popped up pretty early on, once they are fixed this is a neat version, and backstage there is a lot of new stuff to work with.
So because of this new re-written core, I won't be jumping on to 2.0 just yet guys, I want to work with 1.9 a little more, and so I hope to start a 1.9.1 very soon and have a new update for you guys within a month. I even wanna do you an avatars in the chat plug-in like Avacweb has.
Anyway if anyone has any questions about the new features or anything regarding 1.9 feel free to ask or PM me.
And on an unrelated note - Avacweb is now running 1.9 here with perfect results...
[/div]