AJAXifying Elgg

Hello, all!

 

As the GSoC coding period is going to start soon, I am trying to make a list of all the possible areas which have to be AJAXified the most. Basing upon the list, I will be opening tickets on the tracker, which will be fixed during the coding period. So, I request you all to give suggestions about the places that can constitute this list. Please feel free to mention about the interfaces which you want to see AJAXified. Your feedback will be of great help to me!

I came up with a list which I feel, contains all the basic actions which everyone wants to get AJAXified.

  1. Adding / Deleting a wire post
  2. Replying to a wire post
  3. Liking / Disliking an entity object
  4. Commenting on a Blog post, Page
  5. Deleting a Blog post
  6. Viewing comments for a Blog post
  7. Deleting a Bookmark
  8. Marking a message as ‘read’ in messages plugin
  9. Deleting a message
  10. River selection in Activity tab
  11. Commenting on a river item
  12. Suggestions while searching
  13. All/Mine/Friends filter tabs
  14. Loading next set of paginated river items
  15. Switching between tabs on the home page

 

Thank you

  • if you go this surprises me, is a compilation of all we present NEEDS ateriores version.. If you include all that will be something special

  • That's all very well but needed to be quick chat and if we can incorporate games as itcomes out of concept ..

  • @ghumanz

    The AJAXification of tabs on a user profile will definitely reduce the server load a lot. It will be included in the list. Thanks for suggesting.

    @Mike

    Thanks for suggesting a list of whole new ideas!

    @elf Pavlik

    I will be implementing it as a plugin, the plugin can be immediately disabled in case an error occurs.

  • @ Ravindra Nath thanks to accept my suggestions.

    As I feel one more option will help a lot to increase user interest and reduce server load is here:-

    image

     

    If you add this prev blog and next blog option on blog read page and ajaxify these. Then it will save a lot of end user time to open next blog , reduce server load as well and provide more appropriate option to every blog reader.  

  • There's one feature that I think would be huge. An ability to refresh view - and only this single view - with use of AJAX.

    This feature can be used to implement auto-refresh for comments, forums, pagination etc. It can be used for much more as well and would be great feature on it's own.

    <?php

    $vars = array(
        'ajax' => true,
        'token'  => 'security token generated here',
        'ajax_parameters'  => array('param1', 'param2'),
    );
    echo elgg_view('view_name', $vars);

    ?>
    <scrpit type="javascript/text">
        elgg_refresh_view('view_name',{param1:paramvalue, param2:paramvalue});
    </script>



    Moreover, this mechanism can be used to eg. refresh one single entity on the listing after it's edited with a lightbox.

  • @Mike

    I guess this can be implemented using the current ajax/view mechanism and there's a ticket on trac (#3228) for writing a js function to fetch a view.

  • @ghumanz

    I think I have to make some modifications to the blog plugin code to add those options to it. (Correct me If I am wrong). This is a feature above ajaxification, so feel free to open a ticket in the tracker for the core devs to lookafter it.

  • I summarized all the above suggestions into a list, as it will be easy for me to transform them into tickets which will be opened on my repository's tracker. I will try to close as many as possible during my GSoC coding period.

        Liking / Disliking an entity object
        Deleting an entity object

        Adding a wire post
        Replying to a wire post
       
        Commenting on a Blog post, Page
        Viewing comments for a Blog post

        Auto-fill title + description for bookmarks based on specified url

        Joining/leaving a group
        Inviting friends to group
        Replying to a topic in the group discussion

        Commenting on a river item
        All/Mine/Friends filter tabs
        Loading next/previous set of paginated river items
        Auto Refreshing of the river

        Inline-editing of various content items

        Progress while uploading a file

        Marking a message as ‘read’ in messages plugin
        Auto-update message counter

        Notifying users when message, comment, post on a discussion appears.

        Auto Refreshing other page elements like online users, widgets
       
        Suggestions (title + entity icon) while searching
       
        Switching between the plugin tabs on the home page
       
        Auto-update timestamps
       
        Checking for available usernames, Password strength etc.
       
        Plugin menu links that appear on profile pages.
       
        Reporting content as inappriopriate
       
        Ordering entities from the list by drag-and-drop
       
        Uploading and cropping avatar   

        Chat toolbar

    You can track my progress by watching my repository at github. I will be excited to recieve your comments / suggestions on my work.

    Thank you everyone for sharing your ideas and great support! :)

  • @ravindra oi, oi, oi . . . . respectable list you made ;-) )
    anyway, thank you^ for your great support :-)

Feedback and Planning

Feedback and Planning

Discussions about the past, present, and future of Elgg and this community site.