Jump to content
View in the app

A better way to browse. Learn more.

Learn more

Invision Community Blog

Any community administrator knows how important moderation features are to a successful community, and the IPS Community Suite offers some great features in this area. The Spam Monitoring Service, for example, a unique feature that is completely unmatched anywhere else, keeps your community safe from spam content. Also in IP.Board 3.2, we introduced the Moderator Control Panel feature, giving your moderators a central location to manage all of their moderation tasks.
In IP.Board 3.3 we wanted to spend some time researching what could be done in this area to even further help your moderators to keep your community running smoothly.


One moderation feature which has remained largely unchanged throughout IP.Board's life is the warning system. It's a fairly simple system - if a user behaves in a way that is inappropriate for your community you can issue them a warning and along with that warning give a punishment, such as requiring moderator approval of their content or even banning them from your community for a certain amount of time.


So how can we make it better?

We set ourselves a few goals for how we could improve the warning system for all of your users:
Control. Many administrators prefer to have more control over the way moderation happens on their communities. You may want the first time a user is warned to always be a verbal warning only; you may then want to the second warning to always be a 1 day suspension, etc.; you may want different punishments for different infractions. Or perhaps you want to allow your moderators to choose punishments themselves as they do currently. We wanted the warning system to be able to handle both of these setups so you can be as fixed or as flexible as you like. Communication. At the moment, if a moderator gives a member a warning, no other moderators know about it unless they happen to be looking at a member's warn logs. We wanted communication between the system and the moderators to be better. Moderators should be able to know when a member is warned. They should be able to see who warned them, why, and what post caused the warning. They should know looking at a member's profile if they're currently serving out a punishment for a warning, and if so, which warning. Clarity. If a member is warned, they need to know why and what the punishment is. They shouldn't be put on mod queue and not know about it and then wonder why their posts aren't showing up.

Points, Reasons and Actions

The new system works on a points based idea. When a user commits an offence (for lack of a better term) they will receive a number of points appropriate for the severity of the infraction. As an administrator, you will set up these different "Reasons" in the Admin CP.
For each reason, you can determine if moderators are fixed to a certain number of points, or if they can change the number of points to give a member. You can also choose whether or not to allow moderators use of a generic "Other" reason, for which they can set any number of points.

For each reason, you can also set how long the points last for - whether they stay on the user's account forever, or if they are removed after a certain period of time, and if that is set in stone or something moderators can change when issuing a warning.




You can then also set up Actions. Actions are the punishment that a user receives when they reach a certain number of points. There are 3 different punishments you can give:Moderation queue - all posts the user submits must be approved by a moderator before they are shown. Restricted from posting - the user cannot post at all. Suspension - the user cannot access any area of the community at all.

And each can be for a specified period of time or indefinitely.
Again, you can specify if this rule is set in stone or if moderators can have free control over the punishment.



If a moderator issues a warning and it gives the user a number of points that does not have a corresponding action - you can choose if that means moderators can set whichever punishment they like, or if that constitutes a "verbal warning only".


Through this advanced level of control - you can allow the system to be as rigid (in that moderators have to give a certain number of points for each type of infraction, and punishments for each number of points is defined) or as flexible (in that moderators can give whatever number of points and whatever punishment they choose) as you like.
Since points can also automatically be removed after a period of time you can also be as forgiving or not as you like.


So this is what the warning screen looks like (you can get to it from a link in the member's profile or next to any of their posts):

After selecting a reason, the punishment will be filled out and you may or not be able to change it as per the Admin CP settings:

If a moderator has control over the number of points, they can also click the "?" icon which will explain all of the points levels and warning actions.



Notifications

As you will have noticed in the above screenshot - when warning a member, you can specify both a note for the member (in which you will presumably explain why you are issuing the warning) and a note which can only be viewed by other moderators. Neither are required, but will show up in the warning log.

After issuing a warning, the member will be sent a notification which will take them to their warnings log page from which they can see the warning and what punishment they were given:


Users and moderators can access the warning log from the profile or from any post. When a moderator views the log, they will see the note for moderators in addition to the note for the member.


In addition to members receiving notifications when they are warned, all moderators who have the ability to view warnings can set their notification options to notify them when any other moderator issues a warning.



Warning and Punishment Information

Note that the details popup includes a link to the actual post which caused the moderator to issue the warning. When a moderator clicks on to the warning page, it remembers where they came from - this allows both them to be taken back there once the warning has been issued, and it allows other moderators to see the exact post the warning was issued for.
When another moderator is viewing that post, it will also be indicated there with a red icon:

This allows moderators to see that a warning was issued for the post and that they do not also need to issue a warning.
Clicking the icon brings up the details popup:


In addition, when viewing a user's profile, moderators will be able to see if they are currently serving out any punishments:

And again, clicking on that badge will show the details:




Acknowledgements

Another additional feature is the option to require that all members "acknowledge" their warnings. If enabled, after a user is issued a warning, they will not be able to post again until they acknowledge it. When they click the reply button, they will be shown a screen like this:

After acknowledging the warning, the user will be taken straight back to the post screen.

If you have not enabled acknowledgements, or even just to remind the user even if you have - when a user is on moderation queue, a message above the post editor will remind them of this, so that they don't wonder why their post isn't showing up after they post:






Integration

Although we have talked about this feature from within the forums app - the integration you see will be included in all applications, and developers can add easily add support for their own. The integration will allow the following features in every app:The link backs to the content from the warning log, wherever that is. The red icon within the content if a warning has been issued for it. Honouring of the punishments given - moderation queue and restricted from posting. The message showing above the editor if on moderation queue. Prompting the user to acknowledge warnings before posting.








We hope that the new warning system helps you to manage moderation on your community more easily. This is just the start of our plans for IP.Board 3.3 so watch this blog for more updates coming soon.
Feel free to comment on this blog entry below or, if you have feedback unrelated to this blog entry, start a new topic in our feedback forum.
  • 26,461 views
IP.Content, our popular content management and creation tool, allows administrators to manage content throughout their site. You can create templates, pages, blocks that can be embedded anywhere (even outside of IP.Board!), and databases of custom data with many easy to use yet comprehensive tools built into the software. Development is underway on the next major version of IP.Content, version 2.3, and we wanted to take a moment to let you know what you can expect to see in this release.

Please keep in mind that all specific features and release schedule time frames are subject to change depending on circumstances outside of our control. With that in mind, let's take a look at the areas we will be focusing on for IP.Content 2.3.


Usability
One of the most important areas of the software we are focusing on with 2.3 is usability. We have received and reviewed much feedback regarding the way IP.Content users utilize the many features in the software and will be placing a very heavy focus on streamlining the interface to make your work flows quicker, easier and more intuitive. Every word, button, link and form option for every page of IP.Content has been scrutinized, and we have found many areas we feel we can make more intuitive without removing functionality for advanced users.

To go along with improving the ease of use of the software, we are intending to include some new functionality to help novice users get started using the software quicker. Certain requests in the forums show a pattern, and we've been paying attention to these patterns. IP.Content 2.3 should prove much easier to use, for beginning users, average webmasters, and developers alike.


Consistency
The IP.Board framework offers a vast array of features and functionality that can be utilized by applications tied to it, including IP.Content. While IP.Content makes use of many of these features out of the box already, we are going to be expanding the use of existing framework functionality, which will serve many important purposes:
Consistency helps users better understand how the software works, and learn how to use it quicker Better use of framework functionality will improve moderation and administration of the software Expanded use of built in functionality of IP.Board will allow you and your users to utilize more features in the software

There are some specific areas we will focus on with this release, and we are sure that you will be pleased with the expanded feature set and improved consistency between IP.Content and the rest of our addon applications.


SEO
Search engine optimization can be a challenging task with software such as IP.Content, primarily because you are in control of the majority of the final output. Nevertheless, some specific areas of focus have been identified and we will be improving some various aspects of the software to help ensure the software itself is not a hindrance in allowing you to target your site as you see fit.


Strengthening Existing Features
We want to take this opportunity to also strengthen some of the existing feature set of IP.Content. Certain features do not always work as some of our customers expect, and we want to ensure your experience with the software is intuitive, and produces the outcome that you expect. We are going to focus on some of the existing features that we have received feedback about to ensure they work as you expect. Before we move on to brand new features in the software that will blow you away (and we have internally identified several we wish to explore further), we want to be certain that the existing features work perfectly for you first.


Stay tuned for future blog entries outlining details of the specific changes to come. We wanted to give you a high-level overview of the direction we are taking IP.Content, and the areas we are focusing on, so that you can know what to expect when we start talking specifics in the coming weeks. We are targeting spring of 2012 for a release, and in the mean time will be working closely with focus groups, alpha testers and developers to ensure the release we deliver is as great as we hope it will be. Please ensure you post feature requests in the IP.Content feedback forum, otherwise we welcome your comments in the area below!
  • 10,388 views
IP.Board 3.2 was a major new version boasting a new sleek skin with a major overhaul to the user interface. We also added in long requested features such as tagging, the shared media panel, and a brand new moderators control panel along with many more improvements.

We have been thrilled with the overwhelmingly good feedback since 3.2's release and we are ready to take IP.Board to the next step by targeting specific needs with laser-like precision.

The next version of IP.Board will be 3.3.0. But what is in a number really? Do not worry, we are revising our version numbering so that a major increment reflects any added functionality. The development cycle between 3.1 and 3.2 was lengthy because of the massive changes we made. This cycle will be much quicker.

We want you to think of IP.Board 3.3 as improving and refining what we already do - not as a huge update that will require extensive changes. In fact, unlike the 3.2 update, the 3.3 update will not have a new default skin or sweeping code-base changes that impact existing hooks/apps. So lets look at the areas we are targeting.

Search Engine Optimization
We have had lots of feedback about this area of the software. We have made huge strides in the past by ensuring the correct headers are sent and the HTML is as clean as possible. We even have our free-to-customers product IP.SEO.

We are taking this a step further in IP.Board 3.3. We set up a small focus group earlier this year and asked them directly where we can improve and we received some great responses which we will work on.

Moderation
Key to running your community efficiently is good moderation tools. IP.Board has tons of functionality but sometimes there is a little overlap or areas that are not crystal clear. We will be working on some of the moderation tools to improve that and we are also introducing a major overhaul to a popular moderation feature!

Admin CP
Our admin control panel is incredibly comprehensive but we are looking to make it a little smoother and easier to use in common areas. We have some specific ideas on how to speed up common tasks which we will implement in 3.3.

Large Boards
Many of our customers have grown with us and taken their small community into new territory with millions of posts. Other customers have converted to us from a large established community. Either way, there are some specific needs that larger community owners have that we are working on for 3.3. We have an innovative cool new feature currently being written that we know large community admins will love!

Refinement
As always we continue to refine existing areas of the software. Our development staff continually works through our bug tracker and support tickets to fix reported bugs. Beyond bugs we often make little changes that make a big difference. Simply rewording the text of a button or moving a link to a more logical location can make things work more smoothly. All those little changes add up to the overall polish of the software.

We are happy to say that IP.Board 3.3 will not mean a complete new skin and neither should your custom skin need reworking from scratch. Existing modifications and hooks should operate just fine too.

Everyone at IPS is very excited about this release and cannot wait to start blogging about the new features and improvements we have implemented. We are shooting for an late first/early second quarter 2012 release date (a release date from IPS!). Keep an eye on our blog for more news soon!
  • 16,503 views
IP.Gallery is our popular photo and movie sharing platform for IP.Board. We've been working on updates and I wanted to take you through several today.

You've already read about the bigger features for IP.Gallery 4.2.0 such as tagging, quick navigation, moderators' control panel, album selector and the Admin CP updates.

This entry covers a few of the smaller updates - most of which have been requested via our feedback forums.

Image View Updates
We've made a few cosmetic changes to the view image page to bring it inline with IP.Board 3.2's look and feel. The image title /follow image button is now in the same format as a topic title for consistency.



Image Only Global Album
We've now made it possible to have a global album that only accepts images and not albums.



Sort by title
You can now sort an album by image title. This can be set when adding or editing an album as well as being available dynamically.



Like and Reputation
We've added in the like / reputation button. The screen shot shows the system in the 'like' mode. If you chose reputation mode, it would display the plus and minus buttons as normal.



Member's Album
We've added in an enforced global album named 'Member's Album'. This is the default parent for any new member albums. This helps to separate the global albums a little and allows you to better set permissions. If you only want your members to create albums in your existing global albums, then you can deny permission via the edit album feature.

This wraps up our series of IP.Gallery updates. I hope you've enjoyed them!
  • 6,651 views
IP.Gallery is our popular photo and movie sharing platform for IP.Board. We've been working on updates and I wanted to take you through one today.

The IP.Gallery 4 Admin CP Album Manager streamlined down the various Admin CP functionality for managing albums but it was hard to locate specific albums and to drill down through the global album structure.

I've completely rewritten the Album Manager and put the focus on finding the albums you need as quickly as possible. I've broken the Album Manager down into two tabs: Global Albums and Member Albums. Each has a context sensitive search bar so you can quickly search through your albums.


The global albums display. It now shows sub-albums under the parent album and also shows if the global album has any member albums attached to it. As you'd expect, clicking "Contains X member albums" takes you to the member tab with those albums displayed.


The member albums display. Clicking on the owner name will bring up all their albums. It also shows the full parent tree so you don't end up confused if two albums have a similar name but in different areas.


You can quickly search for a member's albums via the member tab.


The album selector we wrote about previously is also in the Admin CP and works in the exact same way when you need to select an album.

I hope you've enjoyed this blog entry. I'm sure you'll all love this feature and it'll make your album management much more enjoyable!
  • 3,702 views
IP.Gallery is our popular photo and movie sharing platform for IP.Board.

Today, I wanted to take you through an important part of the IP.Gallery 4.2 update; the album selector.

At various places within IP.Gallery, there is a need to select an album. This may be because you're creating a new album; choosing an album to upload into; moving images or moving albums. In the current version, this is achieved with a simple drop down list to allow an album selection.



This isn't ideal because it's unclear which albums are yours and which are global albums and when you have a lot of albums, it produces a very long and confusing list of album names.

IP.Gallery 4.2 introduces a dynamic album selector that is used everywhere you need to select an album.



It offers a much better view of available albums:
The selector separates out global albums from member albums. You can also search for albums which is great if you're performing moderation tasks. You can quickly select from recently selected albums easily. It is context sensitive and displays only albums available for the task you're performing.

I've recorded a short video so you can see this in action.



I hope you've enjoyed this update. It'll certainly make your day to day Gallery tasks much easier! It's also available from the Admin CP too.
  • 4,885 views
We've already blogged about some miscellaneous changes you can expect to see coming in IP.Downloads 2.5, and hope you are excited about these enhancements and improvements to the software. We have just a few more changes we wanted to let you know about, so without further ado, and in no particular order, read on to see what else you can expect to see coming in IP.Downloads 2.5.


Ability to re-rate files

A minor enhancement to the existing rating system, you will now be able to re-rate files as of IP.Downloads 2.5, if your group permissions allow for it. This means if you rate a file you downloaded a 4, for example, and the author improves the file, you can re-rate the file a 5 when the new version is released.


Custom field searching

Many of you have requested this feature, and we are happy to announce you will now be able to search custom fields in IP.Downloads 2.5. You will be able to configure per-custom-field whether you want to allow searching in the field or not. When a custom field allows you to search it, that field will be available in the application search options on the advanced search form. Custom field searching is supported with both SQL and Sphinx searching.


Linked files domain blacklist

We have added a new setting to allow you to "blacklist" domains so that files cannot be linked to on those domains. The ACP setting is a textarea allowing one domain per line (with * serving as a wildcard to allow you to include subdomains). When a user links to an offsite file, the link is checked against your blacklist, and if the link points to a domain you have blacklisted, the submission will be rejected with an error message.


Quick access to member reports in the ACP

We have added a link on the Manage Members page to allow you to quickly look up a member report in IP.Downloads for that member. This one link can now allow you to better monitor your member activity within IP.Downloads.




Other files you may be interested in

There is a new ACP option to allow you to add a block on file view pages labeled "Other files you may be interested in". This block is essentially a search based on the filename for the file you are viewing, pulling in similar files that may be of interested to you. Behind the scenes, sphinx will be used if you are using sphinx for searching your site.

We have ideas for future expansion of this capability based on various other factors, but we felt that a search based on the filename was the most logical way to proceed for an initial implementation. Note that while the search only utilizes the file name to find similar files, when we perform that search we look at both file names and descriptions.




Wrapping up

Beyond the changes we have blogged about here, we have gone through the bug tracker and resolved all outstanding bug reports. We have also implemented some various minor changes to help improve efficiency and resource usage throughout the software, allowing it to perform better than ever! We hope you are as excited as we are about IP.Downloads 2.5, and we look forward to your feedback on the upcoming software release.
  • 5,084 views
IP.Gallery is our popular photo and movie sharing platform for IP.Board. We've been working on updates and I wanted to take you through a few of them today.

IP.Board 3.2 introduced many new core features such as tagging and a Moderators' Control Panel. These features were written to allow other applications to take advantage of them easily to unify the various apps.

We've introduced these new features into Gallery 4.2.

Tagging
Tagging allows you to 'tag' an image with data. You can then search these tags to return all matches. This allows you to add secondary categorical data to your images and movies. You can allow your members to add new tags freely or limit them to presets you set up. You can override the presets on a per album basis.


You can add tags when adding or editing images.


The tags appear under the image name when viewing an image.


You can search a tag and find all matching images.

Quick Navigation
IP.Gallery now supports the quick navigation panel which is launched when you click the icon just below the search box. It contains a list of all Global albums and also a list of your own albums so you can go to an album quickly.



Moderators' Control Panel
IP.Board added a central control panel for moderators. This makes finding and approving unapproved content much easier than navigating through the forums and apps to locate them. Both comments and images are supported.



These additions tie IP.Gallery into the IP.Board framework for a cohesive integrated feel across the products.

I hope you've enjoyed this update, we've got more to follow!
  • 5,481 views
IP.Blog is our popular blogging platform for the IPS Community Suite. We've been working on updates and improvements to this platform for the upcoming 2.5 release which we wanted to talk about today.



Interface Improvements

We've spent a lot of time cleaning up the interface and making use of the new styles available in 3.2. The aim was to make it simple and intuitive to create, manage, post to and find blogs.


Here's a few screenshots:




Tags

IP.Blog was our first product to make use of tags. In IP.Board 3.2 however, we added a more global tagging system with more advanced features (for example, an open or closed system and prefixes).
In IP.Blog 2.5, we've updated the tags system to use that new global system, so the features and interface that you're familiar with will now be available in Blog too, including tag search.

Existing tags in entries will be updated to the new system, so nothing will be lost.



Friends Only

Currently IP.Blog allows you to have blogs that are private or only viewable to those who you specify. We've integrated IP.Blog into the friends feature in IP.Board and added a new "Friends Only" option which allows your friends (and only your friends) to view your blog.



Blog This

IP.Blog currently has a hook called "Blog This" which allows you to blog about a post you find on the forums. We've extended this feature so that a new "Blog This" link now shows in the standard share links used throughout the IPS Community, in:
Forum topics Blog entries Gallery images Downloads files Content articles Nexus products Calendar entries

By clicking the Blog This icon in any of these locations, you can blog about the content on that page with just one click. The content will be quoted and a link to the content will be added automatically to your entry.


Manage Comments

IP.Board 3.2 added a global moderator control panel. In IP.Blog 2.5 we've deepened the integration with this feature and so unapproved comments on blog entries will now show under "Unapproved Content" in the moderator control panel.



Entry Images

We've added an additional field when submitting a blog entry for an "Entry Image". This allows you to upload an image which will then display in your blog entry both in the entry itself and on listings in the entry and blog lists.



Entry Views

In addition to seeing how many views a blog has, you can now see how many views a single entry has had.
  • 4,789 views
IP.Downloads features a robust and powerful file submission process, allowing your users to quickly and easily upload files to your site and configure them to the specifications your site has set. Users can upload multiple files and multiple screenshots, using either the traditional uploader or the flash uploader; you can configure custom fields for users to populate, and even require them to fill in the fields; versioning is handled automatically, if enabled, and changelogs are fully supported. IP.Downloads provides much of the functionality you would ever need in a download manager out of the box, and allows you to extend this functionality as needed on a per-site basis.

For IP.Downloads 2.5, we have improved some aspects of the file submission process, added some new features, and extended how the submissions are presented in some areas. Read on for further information on changes you can expect to see in the next release of IP.Downloads.


Tagging

I suppose I could end this section with "'nuff said", but for those of you looking for the details, we have implemented full tagging support in IP.Downloads 2.5. You can disable tagging on a per-category basis, and the system supports the pre-defined tagging system (with the ability to configure pre-defined tags on a per-category basis if you wish). You can utilize prefixes and disable prefixes on a per-category basis as well. When submitting a new file (or editing an existing one), you will be presented with the standard tagging interface as you would when submitting a topic, and the interface adapts based on how you have configured your tagging system as a whole (i.e. if you use pre-defined tags, the user will be presented with a dynamic select box to choose from the list of available tags).

As mentioned, prefixes are supported, and will be highlighted before the file name (just like a prefix in the forums will show before the topic title). Tags are searchable through the global search system, and tags are shown where relevant (search results, category listings, and the file view page). Basically, all aspects of the tagging system available through the core framework have been incorporated into IP.Downloads, allowing you to configure the system to suit the needs of your site.




Enhanced uploader support

IP.Downloads supports the use of both the traditional uploader and the advanced flash uploader. The traditional uploader requires you to select a file, hit the 'Attach file' button, and then proceed to select more files or continue with the form submission. The flash uploader will allow you to select multiple files at once, and will upload them automatically once you have confirmed your selection. In IP.Board 3.2, we removed the ability to configure your uploader preference from the user control panel, deferring to the more intuitive inline option available on posting forms throughout IP.Board. When you are replying to or starting a new topic, you can change your uploader type right on the submission form (if you have the ability to upload attachments). This is a more logical way for users to set their preference, but a problem presented itself with the setting removal in the User Control Panel - IP.Downloads did not provide this same inline switching capability, so if a user decided he needed to use a different uploader type, he would be required to visit the forums, click to start a new topic, change his preference from here, and then return to his file submission form to continue.

We have added the ability to change your uploader preference right from the IP.Downloads 2.5 submission form, allowing your users to more intuitively utilize and configure the uploading feature without having to leave the page.



When you are using the traditional uploader, as mentioned above, you must click the 'Attach file' button to perform the actual file upload. Many users not familiar with the interface would often select a file and forget to click this button, proceeding to click the submit button at the end of the form before actually uploading a file. The end result is that the user sees an error message on the screen advising them that they did not upload a file, and they have to reselect the file and click upload again after the page has finished loading.

With IP.Downloads 2.5, we have added a check to the form submission process to verify at least one file was uploaded before allowing the submission to continue. If no files have been uploaded, the user will be taken to the top of the page and a message will be shown to alert them that no files have been uploaded. We believe this simple enhancement will help users better understand the interface, save time for users who forgot to upload a file, and make the overall submission process clearer, particularly for newer users not familiar with the software.


Version numbers

IP.Downloads supports version numbering in the submission and editing processes, allowing your users to upload new versions of their file and specify the version number when doing so. The version number is then shown on the file display page along with the file name, so users can see right away what version of the file they are looking at.

We have decided to expand version number support to other areas of the software for consistency. Version numbers will now be shown everywhere the file name is shown - search results, the download manager index page, category listings, and so on. By providing this information to users before clicking through to the file, users can be better informed before visiting a file if it is of interest to them, or if it has been updated since the last time they visited. You can see the version "1.0" in the tagging screenshot above, for example.


Screenshot efficiency

IP.Downloads presently processes all screenshot requests through a PHP backend handler, allowing it to handle many of the various configurations possible with the software. If you store screenshots on a remote FTP server, or in the database, or outside of the web root, or if you allow linked screenshots, IP.Downloads needs to take all of these various possibilities into account and present the user with the same result regardless of how the image is stored. This works well, but routing all image requests through a PHP handler increases the overhead needed to show the user a simple image, and is not necessary for the most common configurations - screenshots stored on disk in a web accessible folder.

We have added a new setting to IP.Downloads 2.5 to allow you to configure your screenshot URL in the ACP. When you configure your screenshot URL, and the image is a locally stored file and exists in the configured upload folder, the screenshot will be loaded directly from the server, instead of served through a PHP script. This might sound like a very minor change on the surface, but it has tremendous resource ramifications, and will benefit the vast majority of IP.Download installations that use a common setup as described above. Further to this - you can configure your screenshot URL as a CDN URL, allowing your screenshots to be stored in a CDN and served to users from the CDN.

To make use of this feature, again, you need to store your files on disk, and screenshots (only) need to be stored in a web-accessible folder. You can move your screenshots folder to your web root and update your ACP configuration if you are storing them outside of the web root directory presently, allowing you to make use of this useful change when it becomes available.

Additionally, linked images will no longer be run through the PHP handler. While this means that linked images will not display a watermark or copyright stamp, if configured, and the remote images will not be proportionately resized, it resolves many miscellaneous resource considerations that apply to the current implementation: bandwidth is saved for you both by eliminating the image being downloaded to your server and by not serving it from your server to the user, linked images are no longer handled through a PHP handler, and linked images are no longer dynamically resized upon request (image processing is one of the most resource-intensive processes with PHP). This results in a much more efficient handling of linked screenshots.

Note that the following will still be served through a PHP handler:
Screenshots stored on a remote FTP server Screenshots stored in the database Screenshots stored in a folder that is not web-accessible Full-sized screenshots, as we need to apply the copyright stamp or watermark if configured (and cannot apply this to the actual image file, in case you wish to rebuild thumbnails later, or change your watermark image, etc.)

The little changes are often the most useful

These changes, while small by themselves, add up to provide a more efficient and robust experience for your users. From tagging support to better screenshot handling, we have performed a top-down review of the entire IP.Downloads product codebase to ensure that it functions the best it possibly can. Your users can expect a more fully-featured experience using the IP.Downloads software, and you can expect it to perform more efficiently on your server. We hope you enjoy these improvements to the software, and if you are interested in hearing about further IP.Download development updates, please subscribe to the IPS Company Blog!
  • 7,048 views
One of the most critical areas of a download manager application is, naturally, the download process. There are many things to factor in - you want to ensure the security of your files, you want to ensure the integrity of the system, and you want to ensure a nice user experience. IP.Downloads supports many features to help you control who can download what and when throughout the software. You can enable anti-leeching settings; you can configure per-group limits on number of files or transfer consumption at the day, week and month levels; you can require that your users post in the forums in between downloading files. There are many options to ensure that you can configure your site in a manner that you feel works best.

IP.Downloads 2.5 is introducing two new features to allow you to better control the experience and provide more value to subscribers or registered users on your site.


Controlling the transfer rate

The transfer rate is the speed at which files being downloaded are delivered to the user. Currently, IP.Downloads will simply send the file to the user as fast as your server (and their connection) will allow. For most applications this is fine, however what if you want to allow guests to download, but give them an incentive to register too? Or what if you want to offer faster downloads to your premium member groups, while still allowing your regular member groups to download files, albeit at a slower rate? IP.Downloads already supports enforcing a limited number of simultaneous downloads, so the next logical step was to allow you to configure how fast the download can be delivered.

Beginning with IP.Downloads 2.5, there is now a per-group option labeled "Speed Throttling (in kB)". It is important to note now that no matter what you set this value to, a download can never be delivered faster than (1) your server can send it, and (2) you can receive it (typically based on your internet connection speed). Having said that, you can now set individual groups to use a throttled download speed, limiting how fast the file will be delivered to the user. As an example, I uploaded IP.Board (which is approximately 8MB in size) to my localhost server. Without download throttling enabled for my group, it was downloaded nearly instantly. After all, I was downloading the file from my computer to my computer, so there was no network latency or connection speeds to worry about. With the speed throttling setting configured to 1 kB/sec, when I started the download, Firefox estimated it would take an hour and 56 minutes to download the file. This is an extreme example used purely to demonstrate how the feature works. In the real world, you might allow your premium groups to have no limit, while your regular member groups or guests might be able to download at 4kB/sec, giving them an incentive to register, or upgrade to a premium membership.


Live countdown before the download will begin

We've most likely all been to websites where you click to start a download and suddenly a counter shows up on the screen, requiring you to wait 30 (or sometimes 60) seconds before the download will actually begin. Many sites dedicated to file-sharing specifically utilize such a setup, providing an incentive to purchase one of their unlimited monthly subscriptions to bypass this countdown.

IP.Downloads 2.5 now has this functionality built in on a per-group basis. You can configure individual user groups to require a short wait period before the download will begin, and this will be honored both on the front end (visibly to the user) and on the backend (so the user cannot circumvent this wait period). When the user clicks to download a file, the countdown will begin, and the remaining wait time will be displayed on the screen.

Here is a short video showing this in action.

http://screencast.com/t/Ff900lsxEiL

In this video, you see me initiating a download and being forced to wait 10 seconds before the download begins.


And still more to come...

These feature additions were some of the most oft-requested feature suggestions, and they fit perfectly with our IP.Downloads application, allowing you to provide measurable incentives to your users to register or subscribe to a premium service on your site. We have a lot more in store for IP.Downloads 2.5 still, however, so please subscribe to the IPS Company Blog if you wish to hear about further changes you can expect to see in the next major release!
  • 5,246 views
Commenting is an integral and central part of our application framework. Because we have a solid commenting system in our core framework, we can easily and consistently role out commenting to each of the addon applications, while delivering a consistent experience no matter what application the user is using. While commenting itself has been available for IP.Downloads since it's inception, we wanted to improve the functionality and implement some features that we think will make commenting more useful for you, your members, and your moderators.


Unapproved comments in the ModCP

IP.Board 3.2.0 introduced a new centralized Moderator Control Panel - a one-stop-shop where your moderators can review everything requiring their attention throughout the site quickly and easily. This ModCP has many functions, but one important and oft-used function is the unapproved content centralization. By visiting the ModCP you can quickly and easily see all unapproved content that you (or your moderators) need to attend to.

IP.Downloads 2.4 showed unapproved and broken files in the ModCP, however comments pending approval was notably missing in this minor compatibility update. Through our own use of comments in the Marketplace we quickly saw just how useful it would be to have a central place you can check to review comments pending approval. Beginning with IP.Downloads 2.5, you will now be able to view, delete, edit and approve comments in IP.Downloads from a new tab in the ModCP under the "Unapproved Content" page. This should make managing new comments that require moderator approval in your IP.Downloads installation much easier.


Comments in search results

It is convenient to be able to find all content across your site within a unified search interface, and IP.Board 3.2 delivers an exceptional framework to allow this to happen across all applications, both in-house and from third party developers. While IP.Downloads itself supported the central search system, comments in IP.Downloads could not be searched for at all in previous versions. Beginning with IP.Downloads 2.5, you will now be able to search for comments in IP.Downloads. Going beyond this basic addition, however, you will also be able to see new comments in IP.Downloads when using the "View New Content" tool, and you will be able to see all of the comments you have made on IP.Downloads files under the "My Content" page. These simple enhancements can provide a lot of value to your community if you heavily use or rely on the comment functionality in IP.Downloads, allowing you to easily and quickly find comments you or someone else has left across your IP.Downloads installation.


Improved guest commenting

Minor improvements to the guest commenting functionality have been implemented in IP.Downloads 2.5, allowing for a more consistent experience for guests across all of our addon applications. Blog introduced these improvements in an earlier version, and the necessary changes were rolled into the core IP.Board package for 3.2. As such, when you allow guests to comment in IP.Downloads beginning with version 2.5, they will be asked for their display name, a captcha will be presented (when you require this via your ACP configuration), and commenting for guests will otherwise work the same as it would for a member.


More to come...

For the release of IP.Downloads, we want to focus on improving the overall experience, and providing a consistent experience across all of our addon applications. We also want to ensure that the software makes use of all of the central functionality that the IP.Board framework provides for, and makes use of it in a logical, easy to use, and reliable manner. These small improvements to the commenting system can make it much more useful if your community makes use of comments in IP.Downloads, and we hope they make your job as an administrator or moderator that much easier.

We have a lot more in store for IP.Downloads 2.5, so stay tuned for further updates. Please feel free to subscribe to our IPS Company Blog if you wish to be notified of future updates. If you have feature suggestions for IP.Downloads, please post them in the appropriate suggestions forum, otherwise we welcome your feedback on the forthcoming changes mentioned here in the comments section below!
  • 5,542 views
Ever have a question you wanted to pose to our staff? Now is your chance for one on one Question and Answers with IPS.

Post a new topic here: http://community.inv...um/474-ask-ips/

For a limited time only. Act now. On sale today. Come on down. Etc.


Note: we're getting some duplicate questions so we will only answer one in that case :smile:


Thank you everyone. We all enjoyed answering your questions. It was a lot of fun. We will do it again sometime.
  • 2,874 views
IP.Chat is our AJAX-powered chatting software application, available as an addon for IP.Board. IP.Chat takes a "less is more" approach and focuses on providing a simple but powerful interface for your users to chat, real-time, on your forums. We have spent some time enhancing the functionality available in IP.Chat to make it more useful and more flexible for you and your users, and we wanted to take a moment to let you know what changes you can expect to see with the release of IP.Chat 1.4.0.


All bugs flagged for correction in a future version have been resolved

Often times we have items reported to the bug tracker that can be considered both a bug and a feature suggestion, or could be considered either a bug or a feature suggestion, depending upon your viewpoint. A lot of the time when we feel the report has merit, or is close enough to a bug that one might reasonably consider it to be a bug, we will flag the report for correction in a future version. We have taken the time to work through all open reports for IP.Chat that were flagged for correction in a future version to ensure we launch IP.Chat 1.4.0 on a clean slate. There weren't many to begin with, but as of the time of this blog entry there are exactly 0 open bug reports for IP.Chat as a result.


Ban confirmation

It was brought to our attention that when you clicked to 'ban' a user within the IP.Chat interface that no confirmation was requested from the moderator. This meant that if a moderator accidentally clicked the 'ban' option instead of another option, the user would be banned from chat until a super moderator went into the ModCP to remove the ban (or until an admin did so from the AdminCP). We have added a quick confirmation to ensure that when you click the 'ban' link that this wasn't an accident before proceeding. While this is surely a small detail, it can save you (and your users) time and hassle when a simple mistake is made.


Redesigned Interface

We have made some small interface improvements based on customer feedback that we feel will both make chat a little more attractive, and a little easier to follow when you have several users actively chatting with new messages popping up onto the screen quickly.



The interface changes have largely been confined to the chat area itself; in other words, the changes we are talking about here are primarily focused on the list of chats.

Firstly, as you'll notice, profile pictures are shown for the users who are chatting. This visual indicator can help you to more easily identify who said what, especially when compared to the names previously shown in the left hand column that could scroll quickly past. In moving the profile picture to the left, we have moved the user name over above the chat message, allowing us to stop truncating the username due to the possibility it could be longer than the space available to show it.

If you take a look at the last message you will notice one other small but useful improvement - successive chats from a single user will now be grouped together. This not only saves space, but helps to create a more conversational approach to the IP.Chat interface, making it easier to read and follow the discussion.


Mobile Support

Not only did we redesign the primary interface, we have added a mobile interface for IP.Chat. Whether you can use IP.Chat on your mobile device will of course depend upon the device's support of the technologies IP.Chat utilizes, however for more advanced smart phones you can now utilize IP.Chat on the go in a native mobile skin.



To allow IP.Chat to better function within a mobile interface, we have made some small tweaks to the functionality when utilizing the mobile skin. First and foremost, there is no embedded scrolling div (this is the area of IP.Chat that scrolls within the page on the full skin). Many mobile devices use touch screens and scrollable divs are not always supported (and when they are supported, users do not necessarily know how to actually scroll within these areas of the page). As such, all chats are pushed directly on to the screen. Because of this, we have also hardcoded the limit to the number of chats on the mobile skin to 50 to ensure the screen does not get too large.

In this screenshot I have scrolled the screen down so that you can also see the list of users, which is shown below the chat messages themselves. The user links have been simplified and pulled out of a menu, but otherwise all of the same functionality is still available.

The area to post a new chat is fixed to the bottom of the screen so that it is always quickly available for the user. As your user scrolls the screen up or down, the text input box and post button will always be shown right at the bottom of the screen.

The best part - private chats are still supported!



When you start a private chat, or a private chat is started with you, tabs will be created at the top of the window to allow you to switch between the main chat room and your private chats.

We are excited about the mobile support for IP.Chat and hope your community makes good use of it!


Full guest support

Last, but not least, we have updated IP.Chat to allow multiple guests to join chat (if your permissions allow it). Guests will be shown as "Guest_####" (where #### is a random number) and will now be able to join the chat room and participate in the conversation. These chat room guests will be shown in the "Who's Chatting" block on the board index, and can make use of all features of IP.Chat. You can even ignore private chats from individual guests, and you can kick individual guests from the chat room.


Moving forward

As you can see, we have made some important improvements to IP.Chat that we feel will allow you to make better use of your software package. These changes improve upon the consistency of the software, ensuring it functions exactly as you would expect within the IP.Board framework, but still allowing it to stand out as an excellent choice for real-time conversations on your site. We have many great suggestions for future versions of IP.Chat, so if you would like to add your support to a particular suggestion, or submit your own, head on over to our IP.Chat feedback forum. Otherwise, we'd love to hear your comments regarding IP.Chat 1.4.0 below.
  • 8,101 views
To wrap up our series of blog entries on IP.Nexus 1.4, there's just a few more new features and enhancements that warrant mentioning.


HTML Emails

Matt recently blogged about the new HTML email support in the IPS Community Suite. IP.Nexus 1.4 makes full use of this feature to send out clear, description and well formatted emails.

It's much more than just a new wrapper around the same text - we've reviewed every email that IP.Nexus sends to make it more informative.

Here's a sample before and after shot of a payment received notification:



Charts & Graphs (and Lists)

Back in December last year, we added a feature to Nexus allowing you to generate charts and graphs with various data. All graphs can be viewed for any period of time (and any span of time), you can customise which data to to place on what series and you can view the results as a pie chart, bar chart or line graph.

We're adding two new features to this. First, a new type of graph which allows you to generate graphs based on the income received based on the country of the user purchasing:


We've also added a new option for viewing the data - as a list. Often people just want to know, for example, what are their best selling products, not necessarily in a graph form. By selecting list as the chart type, you can see just that:

You can of course use this list view for any of the graph types, including the new markets type.


AJAXification

When viewing a support request, there's quite a few things you can do other than reply. We've made two often performed actions: managing the cc list, and tracking/untracking the support request work using AJAX, so you can perform these actions without having to reload the page, distracting you from the support request.


Support Bounce

Sometimes customers will reply by email to a support request which had been closed for a long time. Previously, IP.Nexus would simply reopen the support request, however, this can be annoying if you sort requests by the date they were opened, as they will have suddenly jumped to the top of the queue.

In IP.Nexus 1.4, you have the option to have Nexus reply to the customer in this case, asking them to submit a new support request, rather than reopening the old.


Coupons and Renewals

IP.Nexus allows you to create coupons which can only be used against chosen products. In IP.Nexus 1.4, you can specify if the coupon can also be used against renewals of those products.


Alternate Contact Management

We've redesigned the interface for managing alternate contacts in the Admin CP. You can now search for the alternate account by name, id number or email address, and can edit existing alternate contacts.



That's all for IP.Nexus 1.4. Beta testing will begin soon, so keep an eye on the testing forum. In the meantime, if you have any feedback or suggestions unrelated to this blog entry, as always, please post them in the IP.Nexus forum :smile:
  • 3,254 views
As part of our ongoing commitment to deliver the best community software on the market, we routinely run IP.Board through various tools designed to measure efficiency and resource usage, helping us to identify areas that could benefit from minor and major refactoring to make the software more efficient. We do this periodically with all of our software in order to ensure we have not introduced new code that will cause resource usage problems on your community. This is typically an unexciting task that does not garner much interest from the average user, but we thought some of you might enjoy hearing about some of the resource-based improvements we have made for 3.2.3.

If hearing about the nitty gritty details that go into making the software used to power your community is of interest to you, read on. If not, and you just want to hear about upcoming features or service offerings, please skip this blog entry and stay tuned for next time!


What are we looking at?

When looking at the amount of resources our software uses, there are multiple points to consider. You have to keep an eye on memory usage, CPU usage and disk space usage. You have to consider the entire server stack too - MySQL, Apache (typically) and PHP, and of course the PHP code itself (e.g. IP.Board). There are some things within our control while developing the software, and there are some things that can only be controlled at the server level, so it is important to consider all angles (and server configurations), while tailoring the software to work in the widest array of environments possible. While we cannot control your MySQL or Apache configuration, some improvements can be made at the software level that will benefit everyone, regardless of your configuration, so we often look to these improvements first.

One tool available to PHP developers that can help while you profile your code to look for improvements is xdebug, and this is where the focus of this blog entry will be. When you use xdebug to profile PHP code, a file (called a "cachegrind" file) is created that you can then load into another software package in order to view the results. The most popular tools to view cachegrind files are kcachegrind (for Linux) and Wincachegrind (for Windows). If you are not familiar with what this looks like, here's a quick screenshot to give you an idea (taken using Wincachegrind, since I'm a Windows user):



Note: Times indicated are not representative of a normal page load. I run my local environment with development mode enabled which utilizes far more resources than normal, due to rebuilding of many caches, including skin cache files, on every page load. The screenshot is merely designed to give you an idea of the interface and types of information available with the tools used.


So...what did we find?

Well, it's rare that we find something big, because we routinely run our software through tools such as this. You generally only find huge areas that can stand for improvement when working through major code refactoring (such as IP.Board 2.x to IP.Board 3.x). We did, however, find many smaller areas of improvement that collectively can mean big resource gains when added up together. If you save 50ms of processing on a page, and that page is hit 10,000 times in a day...well, you can do the math.


Static caching

We found many functions that were called several times on each page load, very often with the same data, returning the same result. Without caching, the functions are required to perform the same operations repeatedly, so we added static inline caching to store the results from the processing so that future calls can just fetch from the cache, instead of reprocessing the same data, and returning the same result.

Some functions where we added static inline caching for 3.2.3:
IPSMember::unpackGroup() IPSMember::makeProfileLink() IPSLib::getEnabledApplications() IPSMember::setUpModerator()

Unnecessary code processing

Every operation a PHP script has to perform consumes some level of resources; sometimes this is negligible and sometimes this is measurable and important. When code is executed that does not need to execute, however, it is simply a waste of resources, no matter how small that may be. In reviewing the profiling results, we found some code that was executing which simply did not need to, which we removed/fixed.
We found some various array checks in the output class that were unnecessary, as the array was a class property and initialized when the class was instantiated into an object. We were parsing some dates in the search results area twice, when we only need to do so once. We were parsing the post content in search results, even when we displayed the results as topics. Parsing post content is an expensive operation, so this unnecessary operation was particularly wasteful. We found that one particular IP.SEO hook is outdated and provides no benefit as of 3.2.0. This will be investigated (and potentially removed) with the next release of IP.SEO: http://community.inv...topiclinks-hook Several operations were running when displaying a mini-calendar which were unnecessary (because the results were never displayed in the skin). The IP.Downloads board index latest files hook was loading the category helper class twice, unnecessarily. Similarly, some of the functions within this class were called multiple times, unnecessarily. IP.Downloads was utilizing an unnecessary "GROUP BY" SQL clause. Generally, this requires a temp table to be created, and in this case it was unnecessary. The UCP Manage Attachments page queries for attachments even if it discovers there are none (through the SELECT COUNT(*)... query that is first run). We removed this second query when there are no attachments to retrieve.

More specific changes...

Additionally, we have found several more specific areas of improvement that we have corrected for 3.2.3. These areas of improvement, as a general rule, improve resource usage more than the items listed above, but are less trafficked and thus less likely to be noticeable. As such, your mileage may vary with these improvements depending on how your site is utilized by your members.

We build a cache of each item's 'like' data, and store this separately so that we do not need to query all of an item's like data on every page load ('like' data here means the follow/unfollow system in IP.Board and applications). We were caching this for one hour, however the software is doing a good job of ensuring the cache is rebuilt as needed when records are deleted and so forth. Thus, we have increased this cache from one hour to one day, limiting how often the software needs to rebuild this cache.

A change that we made to one of our JSON encoding routines was causing significantly more resource usage compared to previous versions. We reverted that change back to match 3.2.2, saving nearly 100ms of processing per page this occurred on.

We have a call in our registry destructor that saves topic markers back to the database so that they are not lost between page loads. This is necessary, of course, in order to maintain topic markers across different browsers and computers. We found, however, that this was occurring even when you were using an application that does not utilize the item marking system in our framework (for instance, when you are browsing IP.Calendar). By adding a check in the destructor, we save the software from having to load up the topic marker library, parse all topic markers, just to save them back to the database when the application you are using does not need item marking capabilities.

We discovered a minor bug with the reputation cache loading when the central comments class was utilized in some cases. In certain places, the reputation cache would not load correctly, and while the software largely corrected for this automatically, it meant using more resources than necessary to rebuild this cache because it did not load correctly the first time. By fixing this bug, we saved the software a lot of extra unnecessary processing (and fixed an unreported/undiscovered bug in the process :whistle: ).

We found some applications were not loading caches (from the cache_store table) that they were using. We added these to the initialization routines for the respective applications, saving database queries later on to fetch the caches individually.

We discovered a few areas that were calling IPSMember::buildDisplayData() were not caching the member data as designed. Upon inspection, this was because the member data was joined onto the main queries, rather than fetched separately, so the check in buildDisplayData() to verify the same information is being passed always failed. By refactoring how we pulled members and called this method in a few places, we allow the software to cache the results and prevent parsing of data multiple times unnecessarily. In most cases this means an extra database query, but less PHP processing - the tradeoff is worth it in this case, as the PHP processing is more expensive.

In IP.Content, attachment parsing was happening in a loop for each record that was being displayed in listings. While this is not a problem by itself, per-se, we were able to refactor the code to parse all of the attachments at once, allowing us to run just one database query, instead of one per-record.

Again, in IP.Content, we found that the topic posting library was being called when you were a moderator and unpublished or unapproved records were being displayed to you. The topic library was called in order to post the topic (that mirrors the article, or stores the comments, depending on your configuration), however it was not necessary since the article is not yet visible. We added some simple checks in the code to save from having to load this library unnecessarily.

And last, but not least, we found a major improvement area for IP.Calendar. The mini-calendars displayed in IP.Calendar (and in IP.Content mini-calendar plugin blocks, and on the board index if you utilize the calendar mini-calendar hook) are very much static HTML. The only change that occurs in these mini-calendars is that the current day is bolded, if you are viewing the current month. We utilized some clever caching techniques (using the cache_store table) in order to save the HTML output that is generated, and then we reuse this output instead of rebuilding it repeatedly. The end result is that mini-calendars only need to rebuild once a day now, instead of on every single page load.


Conclusion

IP.Board and our addon applications have large, complicated code-bases. We are beyond the stage, for the most part, where you will find silver-bullet resource hogs in the code that you can fix by adding a simple database index, or changing a couple lines of code. Instead, we are always on the hunt for areas of the code that are heavily utilized (such as library methods) as any small improvements in these areas will add up to significant gains based on the sheer number of calls to the methods.

The above changes may seem minor and unimportant, but the end result was that some pages, following the changes noted above, utilized anywhere from 10ms to 200ms less processing time. When you multiply that by the number of times the pages are viewed in the course of a day, you start to see very real and useful improvements in loading time, without the loss of any existing functionality. These are resource improvements that benefit all sites, from the smallest to the largest, and we are glad we could implement these for 3.2.3 to help you make the most of your community.
  • 15,715 views
A little while ago, I talked about the front-end store improvements for IP.Nexus 1.4. In addition to these front-end changes, we've also made a few changes to back-end order management which we wanted to talk about today.


Tracking Numbers

IP.Nexus has always had the functionality for viewing shipping orders and printing packing notes. In IP.Nexus 1.4 we're expanding the shipping features by adding support for tracking numbers.

When you click the button to mark an order shipped, you'll now see a popup asking for the tracking number and the service you're sending the package by:

If you fill this in, customers will be given a link in their shipping notification allowing them to track their shipment.


PayPal Payer Status

Those who manually review transactions know that it's importance of to be able to approve genuine orders quickly while ensuring that fraudulent orders are noticed.

For customers that pay by PayPal, one of the important factors in this decision can be if the customer paid with a verified PayPal account or not. In IP.Nexus 1.4, you'll be able to see right on the transaction review page if the payment (if it's a PayPal payment) came from a verified PayPal account.


Transaction Review

Sometimes when you're reviewing transactions, you might want to leave one and come back to it later - perhaps you're going to contact the customer for additional information, or wait to see if the funds appear.

This can sometimes cause issue if there's more than one person reviewing transactions - one person might contact a customer for followup, then another refuses the transaction, or contacts the customer again.
In IP.Nexus 1.4, we've added an additional status to transactions allowing you to flag a transaction as being "under review". Transactions with this status are clearly indicated on the review screen (they appear in a blue box rather than pink) and who marked it as such, so everyone knows you already have it under control.


Void Account

It is inevitable that sometimes you need to terminate a customer's account. Perhaps they've filed a chargeback, or broken your purchase agreement.
While IP.Nexus has the ability to refund transactions and easily cancel purchases, this can be time consuming if the customer has made several purchases.

In IP.Nexus 1.4 we've added something of a kill-switch. One button that will refund all transactions, cancel all purchases, close all support requests and ban the account from logging in.



As always, if you have any feedback or suggestions unrelated to this blog entry, please post them in the IP.Nexus forum :smile:
  • 3,445 views
Following on from our first blog entry on IP.Nexus 1.4, one of the areas we wanted to focus on in this version is hosting integration.
IP.Nexus integrates with CPanel and WHM to allow you to sell and manage hosting services to your customers.


Monitoring

Anyone who sells hosting services knows that it is important to always have a eye on your servers and you need to know as soon as one of them goes down. With version 1.4, IP.Nexus has you covered. We're including monitoring features to keep watch on all of your servers.

Here's how it works: every 5 minutes, IP.Nexus will call gateway script which will in turn call a monitoring script which you'll upload to each of your servers, the response from this tells Nexus that the server is online and healthy. If Nexus does not receive a response from the monitoring script, it does one of three things:
1) It can check with a backup gateway script (which you'll locate on a separate server) to ensure the issue isn't with Nexus' communications. If that script can get a response, the server is online and everything is okay.
2) It will give the server a grace period. You can configure how many times Nexus should allow a server to not respond before sending out notifications - this allows the server, for example, 10 minutes to recover before sending out notifications.
3) It will send an email to the list of people you have configured to be notified.

Once that notification gets sent, all those who received it can reply to it and their replies will be sent out to all other people in the list - this is helpful if you have more than one person that's going to be being notified and need to keep them all in the loop.
Any person receiving the email can also acknowledge the notification (more on that in a moment) or reset the monitoring back to a default state (which they'll do once they've fixed the problem).

If nobody acknowledges the notification, and the server is still down after a period of time you specify, additional emails will be sent out to remind all that the server is still down.

The system also has a plan for if Nexus itself goes offline. On the server where your gateway script resides, you can set up a cron for a script which checks the last time Nexus called it. This script will email everyone in your notification list if Nexus has not called it in over 15 minutes. You don't even need to configure this script - Nexus will keep it up to date with any changes you make to the list of people to notify.

You can at any time view the status of your servers in the Admin CP - a green tick indicates that everything is okay, a red cross means the server is reporting offline:


With this of course, you can now create servers which are not integrated with CPanel/WHM but are monitoring only.
There are also of course hook points so you can add your own code to run when a server goes down or comes back up.


Every sysadmin knows that when a server goes down to expect a flood of emails, phone calls, etc. from customers reporting the issue. Now that IP.Nexus knows when a server is offline, we've added a little notification which appears if a customer goes to submit a support request while one of the servers they have an account on is down, notifying them you are already aware of the problem:



Server Cost

When creating a server you'll now have the option to provide the monthly cost of the server. IP.Nexus takes this information and along with it calculates the monthly revenue from that server (based off the information IP.Nexus already has). This allows IP.Nexus to show you a monthly profit/loss for each server.


Dedicated Servers

Those selling dedicated servers in IP.Nexus are used to creating simple custom packages to represent dedicated servers. In IP.Nexus 1.4 we've added a special kind of custom package which represents a dedicated server. This allows you to make use monitoring and viewing the monthly profit/loss while maintaining all the flexibility of custom packages.


Little Changes

We've also made a number of small changes to the hosting features in IP.Nexus:
As you may have noticed from the first screenshot, the server list is now separated by tabs into server queues. For those who prefer the traditional all-in-one layout, there is an "All" tab which will show all servers in the system. When cancelling a hosting account, Nexus currently terminates the account on the server. In IP.Nexus 1.4 you'll have the option to suspend or terminate the account. IP.Nexus now retains the domain and previous server of a hosting account even once it's been cancelled, this allows even cancelled accounts to show up in search results.



We still have a couple more blog entries planned for IP.Nexus 1.4. In the meantime, if you have any feedback or suggestions unrelated to this blog entry, as always, please post them in the IP.Nexus forum :smile:
  • 4,329 views
IP.Nexus is our hugely popular eCommerce and business management application for the IPS Community Suite. Over the past few weeks we've been working on lots of new features and enhancements for the next version of IP.Nexus (version 1.4).

The first set of changes we wanted to talk about revolve around the storefront.

The biggest change we've made in this area is a completely redesigned product page. This is what it looks like:

The more perceptive of you will notice that a redesign isn't the only thing this screenshot reveals - we've added several new features to the storefront.


Multiple Product Images

Probably the most requested IP.Nexus feature, and coming with Nexus 1.4 is multiple product images. You can upload as many different images for a product you like and they are all displayed on the left-side of the product view. Clicking any image will bring it up in the larger box at the top, and clicking that will launch the lightbox to display the full-size image.

We've made adding multiple images a quick and easy experience for administrators using an AJAX upload system, here's a video of it in action:
http://www.invisionpower.com/uploads/nexus_multiple_product_images.mov
As you can see, it's very easy to upload and manage multiple images.


Product Reviews

Another oft-requested feature coming in IP.Nexus 1.4 is product reviews. You can now set (on a per-product basis) if you want to accept reviews, and if you want to moderate reviews before they go live.

Only customers who have purchased the product can review (they'll see a prompt both on the product page in the store and in their purchases list in the client area), and with it they provide a star rating out of 5. The average star rating is displayed on the product page.

All members can click whether they found the review helpful or not, and the count for this is displayed just below the review.

Product reviews of course integrate with the IPS Community Suite Moderator Center - so you'll be able to easily see a list of reviews pending approval, and members will be able to report reviews and these reports will show up in the Moderator Center.


Tax Included

IP.Nexus now has the option to include tax in the price which is shown to customers in the store. The text you see in the screenshot ("incl. vat.") can be customised to display whatever you like (so if you're not including tax in the price, it could say "excl. tax").

The calculation is based off of the member's location if known, or the fallback "All Locations" rate if the location is not known.


Discounted Price

IP.Nexus has long had the option to give selected members discounts based on their usergroup and previous purchases. In IP.Nexus 1.4, if a discount is applied, the original price will be shown striked out next to it so that users are aware that they're receiving a discount.


Grid View

As well as the product page itself, we've added a new viewing option to the category view. Rather than displaying products in a list, you can now display them in a grid format:

You can of course set which view will be the default and disable the option for the user to choose.



This is just the first blog entry we have planned for IP.Nexus 1.4. As always, if you have any feedback or suggestions unrelated to this blog entry, please post them in the IP.Nexus forum :smile:
  • 5,966 views
Since the release of IP.Board 3.2 (and our addon application updates), we have been hard at work resolving issues reported to us in order to deliver the most stable and secure community software available on the net. We are very proud of our latest releases, yet we are still working hard to deal with any issues that affect you, our customers. Before we start discussing changes you can expect to see in future versions of our addon applications, we wanted to be sure that the current releases work reliably and efficiently across the board (no pun intended).

Having said that, however, we did manage to slip in a few new feature changes for the next application releases that we felt you might be interested in hearing about.


IP.Content 2.2.2

IP.Content databases and articles have powerful field configuration options, allowing you to create and customize the fields available in every database (including the built in articles system). An oft-used field is the "Editor" field type, which produces a WYSIWYG editor for posting content to the database. You can optionally allow HTML in this field, which is useful when you are posting complex articles on your site. Allowing HTML in this field, however, creates a situation where one administrator may not want to translate newlines in the editor into newlines on the page, while the next administrator may expect just that to occur.

For IP.Content 2.2.2 we have changed the "Allow HTML" option for each "Editor" field to a dropdown with the options "No", "Yes (change newlines to HTML line breaks)" and "Yes (do not parse newlines)". If you can use HTML in your posts in the forums, this is analogous to the per-post HTML posting options. If you choose "No", HTML in the field is not parsed at all (this is the safest option if you allow non-trusted users to post content in the database). If you choose "Yes (change newlines to HTML line breaks)", HTML is parsed as you would expect, and additionally hitting the enter key on your keyboard to produce a line break in the editor will translate to a line break in the final output. If you choose "Yes (do not parse newlines)", HTML is parsed, but newlines in the editor will not be turned into HTML newlines. This is useful if you post a lot of HTML content and wish to format in a way that is easier to read, but cannot allow line breaks to show up everytime there is a line break (for instance, if you post HTML tables and do not want newlines between table and tr tags to result in a <br /> tag in the output).

If you don't allow HTML in your editor fields, nothing changes for you. If you do, however, you now have one more level of control to ensure your content is produced in exactly the manner you expect.


IP.Calendar 3.2.2

I would like to take this moment to point out something here that many of our customers have overlooked recently due to the fact that IP.Calendar has traditionally been packaged with IP.Board, instead of released separately. IP.Calendar is a separate addon application; it is no longer part of IP.Board directly. This means that it can (and will) receive independent bug fix and feature updates, and subsequently it's version number will not always coincide with IP.Board. When we release IP.Board 3.2.3, you will also see a release of IP.Calendar 3.2.2. This is a minor detail, and does not affect the functionality or ability to use the software, however it is important to keep in mind when you are looking at our tracker and trying to determine if a bug fix has been released yet.

With that out of the way... we wanted to tell you about a minor, but highly requested change coming with the next release of IP.Calendar. Beginning with IP.Calendar 3.2.2, users who RSVP for an event will be able to un-RSVP for the event themselves, without intervention from a moderator or the event owner. The event owner will still be able to remove any attendee from the list (if given the permission to do so in the ACP), however individual attendees will now also see the delete icon next to their name if they have RSVP'd, allowing them to remove themself from the list of attendees.


IP.Nexus 1.3.2

IP.Nexus is continuing to mature as a product, and has proven itself a stable and reliable solution for monetizing your community. We have many great ideas for the next major release of IP.Nexus, however Mark has introduced a change in 1.3.2 that we felt our customers would be interested in hearing about.

Beginning with IP.Nexus 1.3.2, you will now be able to issue PayPal refunds right through the IP.Nexus administrator interface. On orders made through PayPal, there will be a refund option available, which will automatically refund the payment from your PayPal account to the purchaser's account. This small but useful enhancement can save you a lot of time when managing your transaction purchases using IP.Nexus 1.3.2.


And more to come...
Our maintenance releases here at IPS traditionally only include bug fixes. We do this to ensure we are focusing on stabilizing the release without the potential of introducing new complexities or issues, something every developer has to be mindful of anytime a new feature is built. We decided, however, that these few small but useful changes could be introduced safely without compromising the stability of the software, and at the same time allow you some additional flexibility and functionality from your purchases. We are very excited about the changes we have in the pipeline for our future addon application updates and can't wait to start blogging about them, but until then we hope these small additions will tide you over. :smile:
  • 4,847 views
Since the release of IP.Board 3.2 a few months ago, our immediate focus has been on fixing the bugs that have been reported and making fairly frequent releases to our customers. We're thrilled that IP.Board 3.2 has been a huge success and we've received a lot of feedback which we've enjoyed reading.

Now that the initial wave of bug fixes have been made, we've found the time to add in some functionality based on feedback from our customers. Here are some of the IP.Board enhancements that have gone in for 3.2.3.

HTML Emails
This has been a very popular request for a long time now and we've included this into 3.2.3. By default it is off, but you can enable it from the Email settings page in the admin control panel. This will also resolve issues with non Latin characters, right to left languages and more.
The HTML email wrapper is fully editable via the Look & Feel templates as normal and it automagically converts the current plain text templates into HTML so you don't need to change anything!


Import a URL Photo
We've had a fair number of requests for a simpler way to import a photo so we've included the ability to import a photo from a URL when in the photo editor. This copies the image to the forums server so it can be checked (to make sure it's actually an image!) and to create the thumbnail copy.


Editor Improvements
IP.Board 3.2.0 introduced a brand new editor and it really is one of the most complex areas of the software (no, really!). We've put a lot of focus into squashing those annoying BBCode bugs. We've also gone ahead and added the auto-save and 'toggle mode' functionality for editors in the admin control panel.


Of course, there are also numerous other bug fixes and improvements including more efficient Sphinx index building, iPad compatibility and more!
  • 14,012 views
IP.SEO is a free extra from IPS which provides tools to enhance the Search Engine Optimization of your community. It includes features like sitemap generation, the ability to set meta tags on any page, search engine statistics and SEO-related advice on your configuration. The IPS Community Suite itself has many built-in SEO features that are suitable for nearly all communities however IP.SEO expands upon them with more advanced SEO features.

We've been busy working on an update to IP.SEO which will be available soon. New features include:


Live Meta Tag Editor

IP.SEO has long had the ability to add custom meta tags to any page within your community, allowing you to modify the title, add a meta description and more on an individual-page basis.

While working on IP.SEO 1.5, we looked into ways we could make this important tool more accessible, and have taken concepts we learned from the Visual Skin Editor in IP.Board 3.2 and applied them to this.

Much like how with the Visual Skin Editor you can modify the skin live on the front-end, the Live Meta Tag Editor allows you to browse the front-end of your community and view and edit the meta tags configured for each page you visit. This allows you to customise the meta information on every page in your community easier than ever before so you can make sure all of your pages have exactly the right information you want to show search engines.



Improved Sitemap

In IP.SEO 1.5, we've added support for IP.Calendar, IP.Nexus and IP.Chat to the sitemap, so now all IPS applications are supported and your entire community can be accessed by site maps easily.

But not only that, we've also added some new settings for forums. You can now exclude a forum from the sitemap, or even set a priority level for forums on an individual basis. This allows you to rate your important content such as focussed user discussions higher than for example, site-related announcements or off-topic discussion.


Acronym Expansion

Users on a community will often post acronyms or abbreviations about the topic of your community, which can cause those posts to be missing the important keywords your community targets.

For example, we often have users post "IPB" as an abbreviation for "IP.Board". Search engines of course, don't know these are one in the same and when someone searches "IP.Board", posts that say "IPB" won't match. This can be a problem.

In IP.SEO 1.5, we've added a feature we call Acronym Expansion, which will automatically either replace an acronym with the specified long version, or wrap an acronym in a HTML <acronym> tag so that search engines know what the user means.

This allows you to ensure that even user-generated content includes the important keywords your community targets.


Miscellaneous Enhancements

We've also of course included many miscellaneous enhancements. For example, in IP.SEO 1.5 it will be easier to get started with automatic sitemap.xml generation and a tool to download a blank sitemap.xml file if one cannot be generated automatically.

In addition, in an effort to improve the SEO within all of our base products, the next releases of IP.Board and IP.Content have had some links removed when viewing the community as a guest which are inaccessible to spiders like the "Like" button.



Beta Available Now

If you are comfortable testing beta software, IP.SEO 1.5 is now available for beta testing in our pre-release forum.

As always if you have any suggestions for future versions of IP.SEO, please post them to our feedback forum. If you're not already using IP.SEO, make sure you download this free extra now!
  • 5,599 views
IP.Nexus 1.3 will soon be released alongside the upcoming IP.Board 3.2. Dozens of our clients specifically requested 2Checkout as a payment gateway and we are happy to say that IP.Nexus 1.3 adds 2Checkout as a payment option.

Special Promotion from 2Checkout

We are happy to say that 2Checkout has agreed to waive their normal $49 setup fee for all IPS clients for the next 60 days. While IP.Nexus 1.3 is not out just yet you may want to take advantage of this great offer now to prepare for its release. To take advantage of this offer:
[*]Signup for an account, along the right side of the page, just below the fold. [*]During the signup process, when you are prompted for payment, you will find a "promo code" option. Enter invisionfree promo code in this field to receive the discount. Offer ends 15 September 2011. About 2Checkout 2Checkout.com (2CO) is a worldwide leader in payment and e-commerce services. Since 2000, 2CO has helped hundreds of thousands of online merchants with a global platform of payment methods and world-class fraud prevention services, hosted on safe, secure, and reliable PCI-compliant payment pages. 2CO’s merchants can accept Visa, MasterCard, AMEX, Discover, PayPal, Diner’s Club, JCB and Debit cards (in the U.S.) through one full-service payment solution. The system is functional in 30 currencies and is translatable into 15 languages to support international buyers. Best of all, it's entirely turnkey and you only pay when you generate a sale, empowering you to focus more time on building your business and less time worrying about payments. A bit of history... IPS was founded over nine years ago (in Internet time that's forever!) and when we were first organizing the options for collecting payments were difficult for a small company just getting started. For the first couple years of our operation, 2Checkout was the payment provider of choice for IPS. We would not be where we are today without their service and we know they are great option for a new business, or even an established business, making their place in online commerce. [*]Visit www.2checkout.com










  • 9,317 views
Around this time last year, we unveiled the IP.Board Communities app for iPhones. Since then, many community owners have told us that they would like to be able to offer this application customized for their forum, with their own branding.

To meet this need, we introduced the White Label Mobile Applications service, and the response has been overwhelming!

So you can see what the white label applications can do for you, we'll take you through two of our customers' apps.


eFestivals Forum

eFestivals is a UK-based website all about festivals, with an unparalleled store of festival news, guides, and ticket information.


eFestivals Forums is an example of a basic white labeled application, which you can check out on the App Store.

White label applications allow you to change the colors and images on the login screen to match your own branding, making the app more reflective of your community.



Like the generic IP.Board Communities app, a white label app like this one uses the mobile skin, allowing advanced customization without a single change to the application.

Also like the IP.Board Communities app, iPad is fully supported, and displays using the full skin for better use of the larger screen size



Volvospeed Connect

Volvospeed is a community where you can find reviews, guides,technical information and discussions about anything Volvo.

When Volvospeed came to us, they asked if we could make a single application offering unified access to all their communities. The answer is- yes!



With this application, a user can log into every forum in the list with the same user name and password, almost as if it were one forum. iPad is again fully supported.



Pricing and Availability

The white label mobile applications are available now! You can purchase this service right from your client area by clicking New Purchase, then selecting "Services" and "White-Label Mobile Applications", or you can read more about it first.


Future Plans

We have lots of ideas to improve the attractiveness of the white-label option, and will continue to improve it. In the near future, white label apps will gain the ability to take advantage of push notifications among other great features.


Android App

On a similar topic, one of the first questions we were asked when the original iPhone application was released last year was: will there be an Android app?

The answer is, again, yes! We're pleased to announce that you can now get involved in testing of the Android application in our pre-release testing forum!


Easy login to all your IP.Board Communities



Like the iPhone application, you can add a list of all the IP.Board communities you visit, and save your username/password for easy one-tap access.


Uses standard mobile skin



The app uses your standard mobile skin when browsing the forum. This allows your members to have a consistent experience across all the mobile devices they use, and allowing you to customize it to your liking.


Sharing



Android offers a robust and full-featured content sharing system, which we have integrated. This means you can share your content any way your device allows, whether that be by email, SMS, tweet, or any other way you can think of!


And much more!

As we are in the beta stages, not everything is finished yet… but once ready it will have the same options your iPhone members already enjoy –sharing pictures to IP.Gallery, status updates, push notifications*, and more!

*push notifications will require IP.Board 3.2 to operate


Pricing and Availability

We are hoping to have the final release available with or near the release of IP.Board 3.2. You'll be pleased to hear that the Android application continues to be free to your members. The white label option is also available, allowing you to have your own custom iPhone and Android application, offered with your branding to your own members.


Future Ideas

We have lots of great ideas to improve this app and will continue to do so, and we invite you to submit your own ideas for consideration. We may not reply to all feedback, but rest assured we do read and consider it!

We invite you to head over to the pre-release testing forum, download the app and give it a try! It's beta, so you may encounter some bugs, missing features, or features you'd like to see done differently. Please don't hesitate to report to the bug tracker or post to our feedback forum anything that comes to mind!

And now, I'll just leave you with this little teaser...


  • 19,423 views

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.