More in this section

Forums / Developing with Sitefinity / Customizing the Forums Module to track certain events and their resolution

Customizing the Forums Module to track certain events and their resolution

2 posts, 0 answered
  1. Daniel
    Daniel avatar
    1 posts
    Registered:
    04 Jun 2008
    08 Jun 2008
    Link to this post

    Hello all,

    We are looking into various CMS systems and so far Sitefinity looks pretty good. We specially like the API and Sitefinity's extensibility. It seems that Sitefinity may work for us but we would like to confirm before we commit. Here is roughly what we are trying to achieve:

    Our software helps corporations track and troubleshoot certain system events like "printer PTR123 failed to initialize" or "server S234DF is down". We would like to document the event and also the step-by-step resolution process that our clients used, and we are wondering if the Forums module is what we need.

    Here is what we have in mind:

    - We will create several main forums like "printer events", "server events", etc. Our end users do not need to see or know about the existence of these forums.

    - Our end users will never create threads manually. Whenever an event is fired, a new thread will be created through the Sitefinity API to track the event. Each event will have its own thread. For example, when the event "printer PTR123 failed to initialize" fires, our application will use the API to create a new thread under the "printer events" forum. The first post on the thread will contain all the data pertaining to the event. Our application will keep the mapping between the event ID and the newly created thread ID.

    - Our end users will never have to see a list of threads. They do have access to an “event log” webpage that lists all the events that have been fired for their organization. When end users click on one of the events they should be taken to a Sitefinity page that displays the forum thread associated with the event. At that point our end users can add posts to that thread as they resolve the situation. This is all the interaction our end users are allowed with the Forums module.

    Questions/Issues:

    - Is this feasible/doable? Are we in the right track? Does this sound simple or does it sound like lots of custom work?

    - Keep in mind that our application is hosted and shared by many corporations, so we need to make sure that users of client “XYZ Corp” can only see (and post) to those threads that were created as a result of that company’s events. If we store the company ID as a custom thread field, can we do the appropriate checks when the thread is displayed and if necessary redirect to an error page?

    - If we have a specific thread ID, how do we set things up so that the correct thread is displayed on the page?

    - When a post is added through the API, does the content have to be valid HTML? What happens if it is malformed HTML?

    - Sometimes the posts that are added through the API need to include images. What would be the approach? Do we upload the image first and then link to it in the body of the post? How do we build the "url" of the image programatically?

    - How do we make sure a picture from “XYZ Corp” is not seen or accessed by “ABC Corp”?

    Sorry for the long post. Thanks for any feedback!

    Daniel

  2. Slavo
    Slavo avatar
    295 posts
    Registered:
    24 Sep 2012
    10 Jun 2008
    Link to this post
    Hello Daniel,

    Thank you for your interest in our CMS and getting in touch with us. We are also proud of what Sitefinity has to offer in terms of extensibility and API and are constantly trying to improve the developer experience when building upon it. As for your particular situation and the solution that you want to provide to your customers - it's doable with some exceptions.
    • Forums posts and threads can be created for your purpose through the API with no problems.
    • The different controls display information according to what is passed in the QueryString. For example, you can give the ID of the thread you want to display and the SingleThread control will automatically catch that.
    • There is no limit as to what HTML is passed to the methods in the API, and the post/thread will have what you passed as content.
    • Images can be added in posts, by directly inserting <img> tags in the content itself, with the respective URLs. On the side, you can use our Images & Documents module for storing them and get the URLS from there, then pass them to the <img> tags in the content. Alternatively, you can store them in the file system.
    The exceptions are that you cannot control permission per Image Library, Image, Forum or a single thread/post. Currently, our modules only support permissions for the whole module, and once a user has those he can read/write/delete everything in that module. This is valid both for our Forums and Images & Documents modules. We have plans to add built-in support for more granular permissions, but we cannot commit to a timeframe yet. Most probably this is going to happen for the next major version, coming towards the beginning of next year.

    Sincerely yours,
    Slavo
    the Telerik team

    Instantly find answers to your questions at the new Telerik Support Center
2 posts, 0 answered