Check this out : BuddyPress check-ins !

Publié le

par

Un plugin BuddyPress pour expérimenter la HTML5 geolocation API.. On se croirait presque dans foursquare !

BP check-ins ?

Il s’agit d’ajouter la possibilité de localiser ses actualités de profil (profile updates) ou les actualités que l’on publie dans un groupe (group updates). Pour ce faire, depuis la textarea « what’s new » de la homepage des activités, d’un groupe ou se son profil, il suffit cliquer sur l’icône en forme de marker qui s’est glissé dans son coin supérieur droit.

Merci à la HTML5 geolocation API 🙂

Une fois le marker cliqué, votre navigateur vous demande l’autorisation de diffuser votre position géographique, si vous acceptez, le Geocoder de google map nous fait un reverse geocoding pour afficher une estimation d’adresse. Si vous refusez ou que le navigateur contient le mot explorer dans son nom, pas de souci, vous pourrez vous même rechercher votre adresse depuis un champ texte. Dans les deux cas, si le résultat ne vous convient pas vous pourrez affiner en utilisant le bouton de modification de l’adresse. Il ne vous restera plus qu’à entrer le texte de votre activité avant de la publier

checked-in !

Une fois l’annonce publiée, un lien se glisse juste au dessus du bouton « commenter ». En cliquant dessus, vous atteignez le permalien de votre activité enrichie d’une carte vous positionnant à l’endroit où vous vous êtes géolocalisé.

J’étais là quand j’ai fait cette màj!

Pour finir, si vous allez sur l’onglet « friends » de votre profil, une carte s’est glissée au dessus de votre liste d’amis et si toutefois ils ont eux aussi fait un check-in, vous verrez leur dernière position connue.

Carto de mes pôtes.

Démo animée..

Config nécessaire pour tester cette expérimentation : WordPress 3.3.1 / BuddyPress 1.5.5. Attention ce plugin est en ‘beta – work in progress – dontUse on Prod’.

Merci de vos éventuels commentaires 😉

99 réponses à “Check this out : BuddyPress check-ins !”

    1. Avatar de imath

      Merci BenHen 🙂

  1. Avatar de mecanographik

    Bravo imath pour cette première version de plugin joliment intégrée dans le champs « what’s new » de Buddypress, une bonne approche ergonomique en terme d’intégration de Google maps dans Buddypress.
    A mon avis cela ouvre la porte à une toute nouvelle méthode de gestion des informations utilisateurs dans Buddypress et à de nombreuses fonctionnalités… je teste ça aujourd’hui, Puissant !

    1. Avatar de imath

      Merci et tiens moi au jus 😉

  2. Avatar de P.A
    P.A

    Hey
    Le plugin que j attendais sur Buddypress. Une merveille.
    Fonctionne parfaitement aussi sur ma version 1.2.9 =D.
    Merci 🙂

    1. Avatar de imath

      Hello PA,

      merci pour ce feedback 🙂
      A+

  3. […] project first started as an experiment and now imath has released a beta version to the community. BP Check-ins uses the HTML5 geolocation API. It allows BuddyPress users or groups to check-in at their locations […]

  4. Avatar de Sushyant Zavarzadeh

    I translated bp-checkins to persian language (fa_IR) . please give your email address for sending translation files and add them to your plugin. thanks

    1. Avatar de imath

      Hi Sushyant,

      thanks for the translation, i just dlded it from your website 😉

  5. […] و فیس‌بوک به بادی‌پرس بیافزایید. این افزونه به دست Imath ساخته شده و من آن را به زبان پارسی باز‌گردانی کردم. […]

  6. Avatar de Selu Vega

    Hi I already tried the plugin, and I have to say its fantastic well done, and I have a couple of suggestions about how to improve it.

    1) The important thing about checkins is to be able to tell others no only where are you, but combined with a picture of the moment, a video or a interesting link. We are using the activity plus, but im not finally happy with the behaviour of that plugin. I believe anyway that you checkins must be compatible with multimedia content from other plugin. But compatible.

    2) List of checkins and associate to a CPT, I will be lovely if we could create routes from our checkins or to be part or relative to another custom post, giving you some close opportunitties as foursquare does!

    Thanks for the effort, we are doing a located base comercial social network and we are doing a lot of job about geolocalization and we believe that your plugin has a really nice start! Good luck.

    1. Avatar de imath

      Hi Selu,

      thank you for your feedback and suggestions 🙂

  7. […] project first started as an experiment and now imath has released a beta version to the community. BP Check-ins uses the HTML5 geolocation API. It allows BuddyPress users or groups to check-in at their locations […]

  8. Avatar de Dèdess

    Franchement chapeau Imath pour ce plugin et ton investissement dans la communauté Buddypress !

    Ce plugin m’intéresse beaucoup pour mon réseau de supporters Fansfoot.

    Je vais le tester et j’abonde dans le fait de pouvoir le lier à une image ou vidéo.

    Dèdess

    1. Avatar de imath

      Merci Dèdess pour ton feedback et ton commentaire 🙂

  9. Avatar de fitmogul

    Great work. 3 suggestions:

    1. It would be VERY helpful if the search field was able to auto populate locations/businesses as the user types it in based on their location (similar to google).
    2. In the settings, the Admin would be able to specify the country of use.
    3. It would be mobile/responsive friendly.

    Keep it going! Been looking for something like this for awhile.

    – FitMogul

    1. Avatar de imath

      Hi @ fitmogul,

      Thanks for your suggestions and comment. i agree on 1 and 3. I’m not sure about restricting the country of use, but why not…

  10. Avatar de fareed
    fareed

    Hello,
    I installed the plugin for buddypress on a multisite, but it is not showing anything. Is the check-ins for multisite?

    Thanks
    Fareed

    1. Avatar de imath

      Hello,

      As the only places where you can post profile updates or group updates is on the blog (by default the main blog) where BuddyPress is installed, you need to activate the plugin for this blog only. Activating it on the network is useless as on other blogs, BuddyPress is not installed..

  11. Avatar de Selu Vega

    Hi Imath, another suggestion, could anyway stores the geodata in the user profile and like in twitter to be able to leave enabled the option for position? that should be so fantastic if you re sharing content from the same place regularly

    1. Avatar de imath

      I agree, thanks for your suggestion, i add it to my todo list 😉

  12. Avatar de Selu Vega

    Your Welcome! Love to see more of this terrific plugin.

  13. Avatar de JD
    JD

    Hi,

    Apologies for not speaking French. I love your app. Is it possible to retool it so that it can be a checkin button which generates a standard message like Foursquare.

    And, is it possible to checkin a group to an event?

    Your advice would be much appreciated – and thanks so much for the hard work you have already done.

    1. Avatar de imath

      Hi Joshua,

      Thanks for your comment, feedback and suggestion. When i wrote this little plugin i just wanted to test html5 geolocation attached to activities. I agree on the interest of using it differently like positionning events near to members position ans making it a directory plugin. I plan to write another tutorial on how to use BuddyPress BP_Component class, i’ll look if it’s not too complex to extend bp checkins this way 😉

  14. Avatar de Philipp
    Philipp

    Imath,

    respect! This Plugin is amazing! 😉 I’m looking forward to your development and thank you for this!

    Bye the way, I agree that it would be fantastic if the PlugIn would build a route out of the status messages. 😉

    Best!

  15. Avatar de imath

    Hello @ Philipp

    Thanks 4 ur comment and suggestion 🙂 I’ll look at it

  16. Avatar de wrkazi
    wrkazi

    Excellent Plugin imath..Thanks for this…I tested it out and it geo-coded the locations very well..only feedback is that possible to refresh the location faster then its doing right now?

    I mean when the user location changes it doesn’t automatically change/refresh the location…i have to close the map icon/image on the activity box or logout and log back in for the new location to be shown..or can we have a refresh location icon/image next to the location box?

    Would appreciate your comments on this…

    Thanks once again for this plugin…

    1. Avatar de imath

      Thanks for your comment and feedback. The location is stored in a session cookie. As soon as you close the browser, it’s deleted.
      Were you browsing the site with a smartphone ?
      I need to think about what’s best in this case 😉

  17. Avatar de Miguel

    not working at all, just run the little spining circle. It’s Not WP multiste. Any clue please? thanks.

    1. Avatar de imath

      @ miguel :
      what version of BuddyPress and WordPress ? I dont see the interest of the multisite as activities are only available in the main blog.. May be i dont understand what you exactly meen by WP Multi.. Thanks for your feedback

  18. Avatar de wrkazi
    wrkazi

    Thanks for your inputs…highly appreciated..indeed i was browsing on a smartphone (android)…i didnt close the browser..the browser was open all the time and i was logged in only….

    to refresh the location i had to click on the map icon/image on the activity box and wait for some time for the location to update…

    also if your plugin can provide some kind of privacy options would be great..like show activity/map stream only to friends or to all…currently there are no working privacy plugins for buddypress…

    the thing is that location sharing would depend on the user..if he needs to share with all users or freinds only…

    Thanks once again….

  19. Avatar de Selu VEga

    I found a bug on plugin, if you have activated any maps plugin like google maps or mapology, checkins doesnt work and get the location anymore!

    1. Avatar de imath

      i see, well i’m afraid it will be difficult to know what map plugin ppl installed..

  20. Avatar de imath

    @ wrkazi

    I didn’t tested the plugin on mobile devices so far. I’ll try to see how to manage it soon.

    I understand the need to make the checkins private / or only visible for friends. I’ll see what i can do in this direction.

    Thanks again for your feedback and interest in this plugin.

  21. Avatar de wrkazi
    wrkazi

    @imath

    Thanks for your response…if the plugin can handle change/update of location better then the way its handling would be great…an auto refresh of location perhaps? I mean automatically update the location on the checkin when the users location changes..Thanks once again for this wonderful plugin…geolocation was a missing part in buddypress which your plugin would fulfil..

    @SELU VEGA

    More then 1 maps/geo plugin wont work stable..they would clash…

    @MIGUEL

    Works perfectly great for me on the default BP theme…make sure you got the latest WP and BP installed..

  22. Avatar de wrkazi
    wrkazi

    @imath

    Regarding the privacy options..this would be asking for too much as this time as the checkin goes into the activity stream and that would be complex to handle…

    Maybe this can be taken care of at a later time….

  23. Avatar de imath

    @ wrkazi

    Thanks for your contributions and replies on this post. As i’m currently adding features to bp-checkins such as a custom post type « places », and image upload/links to checkins, i’ll check the privacy settings, and if i can integrate it to next version, i’ll do 😉

  24. Avatar de wrkazi
    wrkazi

    Thanks for your response imath..highly appreciated..would it be possible for you to share your email id..i would like to email you few details/code/plugins regarding geolocation..this would help you in building your plugin…

    my email id is mentioned in the comments..

    kindly let me know

    Thanks

  25. […] Check this out : BuddyPress check-ins ! Sur le même sujet […]

  26. Avatar de Miguel

    @IMATH as @SELU VEGA said, looks like any google plugin avoid this one to work. A sort of incompatibility.

  27. Avatar de Miguel

    Very impressive plug in, congrats!
    Have you considered a shortcode for pages and posts? would be very use full. Even a widget may be interesting.

  28. Avatar de imath

    Hello @ Miguel

    thanks for your feedback, i saw the trouble with other google mapping plugins. I havent found the time to dive in it. I guess, you’ll have to make a choice use BP Checkins or not 😉

    Now about shortcode or widget : can you develop your idea, i’m interested. What do you expect precisely ?

  29. Avatar de Miguel

    You welcome @IMATH
    I’m testing ‘bp-checkind’ whit a google API plugin ‘BP User Profile Map’ so far works ok. Both plugins not show any problem. I’ll test them further this week.

    Maybe is possible to get the updated location map in activity stream, opening in accordion style instead to do it in a new activity page.

    About shortcode for posts, just like bp-checkind do in activity, so, adding a shortcode in post(or could be an optional checkbox in plugin control panel) when some one add a new comment, also have the option for update actual location map. Even if commentator is logged in, its actual location appears. Map may show up near the comment area in accordion style too.

    There’re several ideas for this plugin, like a widget of all users or, as this plugin do in user profile friends, for each group, its members map will be great too.

  30. Avatar de wrkazi
    wrkazi

    Hi imath

    Would suggest/request the following:

    1. Short Codes:

    “All Geo-Tagged Places” map (with max number of places specified option)
    “All Geo-Tagged Users” map (with max number of users specified option)
    “Geo-Tagged Places within a specific location/address” map (with max number of places specified option)
    “Geo-Tagged Users within a specific location/address” map (with max number of users specified option)

    Other tags in the short code

    * map_height (just a number, such as 450)
    * map_type (ROADMAP, SATELLITE, HYBRID or TERRAIN)
    * map_zoom (a number between 1 to 20)
    * marker_icon (must start with http://)
    * marker_shadow (must start with http://)

    2. Widgets

    Recently Added Places (list)
    Favorite Place (map)
    All Places (map with search)
    All Geo-Tagged Sitewide Places (map)
    All Geo-Tagged Users (map with BuddyPress users)

    Thanks
    W R Kazi

  31. Avatar de Miguel

    test of ‘bp-checkind’ whit a google API plugin ‘BP User Profile Map’ got unstable, bpci just stop to work. BPUP works normally.

  32. Avatar de imath

    hi @ wrkazi

    thanks for your comment and the mail you sent me. I’ll check the shortcode requests 🙂

  33. Avatar de Miguel

    Ok, plugin « Members Avatar Map » works a and let work perfectly.

  34. Avatar de Miguel

    @IMATH For some reason, not checking address in IE9 anymore, only a message « no address », if you type it, no problem. I un-installed and re-installed but nothing change. Please any clue?.

    1. Avatar de imath

      hi @ Miguel BP Checkins uses html5 geolocation API, if the browser doesnt support it, it falls back on searching address. I dont use Internet Explorer for 2 reasons :
      – poor support if html5 & weird behavior
      – not available for mac users (i dont want to add a dual boot/or other virtualization tools just to test IE)

      And thanks for your tests with other mapping plugins.

  35. Avatar de wrkazi
    wrkazi

    bp check-in stand alone works on ie9

    @imath

    http://wordpress.org/extend/plugins/buddypress-profile-privacy/

    Found above plugin for privacy and works fine on bp 1.5

    Only issue is with the friends section

    Bp check-in shows all friends geo located on the map

    Also it shows the last check-in as text link

    Now the problem is let’s say user A is friends with user B. User C is friends with user A. Now currently using the profile privacy plugin only friends can view friends connections/list

    So what happens user C can view user B location. C and B are not friends. They got common friend which is A. This should not happen.

    Is it possible that only the main/base user can see/view the friend list on the map? Also only the main/base user can see the last/latest location n the friends list?

    Kindly do let me know

    Thanks

  36. Avatar de Miguel

    @wrkazi hi, what do you mean with ‘Stand alone work in IE9’? writing the address after ‘no address’ message?

    About your las question, the filter/do-action that hide whats-new div/field from actual user when visit another user account, could be the same for hiding friends map. But even in Facebook you can see list of friends of a friend that actually are not your friends.

  37. Avatar de Miguel

    @wrkazi or do you mean locally?

  38. Avatar de wrkazi
    wrkazi

    @miguel

    I meant i got only one geo/location plugin installed…and i got only bp default theme installed. Bp checkin works on chrome mozila and ie 9

    Agree fb works as you said. That’s the way default bp theme also works. with bp checkin installed you get the location of friends in the friends list. Location on map and latest location as status update. This in my opinion should not be shown to other friends. I mean the location of friends. Friends list can be shown

    1. Avatar de imath

      hi @ wrkazi & @ Miguel,

      Thanks for your helpful comments, i’m sorry i cannot (and dont want actually) make some tests on Internet Explorer. From my point of view, a real browser can be installed on any OS and must try to give the users the latest new features of Web Languages. So, inmo Internet Explorer doesnt disearve i pay attention to it. We’ll see in the future if they pay a little more respect to users (remember DIE6!!).

      Now about friends view in member profile page, i think the user must have the choice to enable or not the display of its position on this area. That’s the direction i’ll take on next version of this plugin. The question is what should be the default behavior : showing or not showing ? 😉

      Again thanks for your contributions.

  39. Avatar de wrkazi
    wrkazi

    @miguel

    I tested with IE in detail. IE8 it seems doesnt work for HTML5 geolocation sharing and i got a « opps location cant be found » kind of error.

    IE9 works fine with BP checkin. I was prompted to share location with the browser and it picked up my location.

  40. Avatar de wrkazi
    wrkazi

    @imath

    Thanks for your reply. Highly appreciated. I would suggest not showing initially. Then later on user can change settings.

    The main/base user can see his friends on map and the latest location as status update. Only issue is with this main/base user’s friend seeing this users friends connection location. They can see the friend list as in fb and bp.

    I agree on ie thing. Its a trouble some browser

  41. Avatar de wrkazi
    wrkazi

    On this point I think location sharing is one to one activity and not one to many. Lets say I want to share location with you. So I add you as a friend. Now you can see my check-ins. But other users should not see my location in your friend list. Or let’s say Miguel is your friend and you have added Miguel. So he can see your friend list and come to know about my location. This shouldn’t be the case. If I want to share location with Miguel then I need to add him as a friend.

    Kindly let me know if what am saying makes sense or not

  42. Avatar de wrkazi
    wrkazi

    @imath

    I have searched unsuccessfully for some kind if code hack to hide the friends map and friends latest location.

    I want the main/base user to only see this. Nobody else. Can you kindly provide some help here.

    Friends list can be seen to logged out users or friends

    Thanks

  43. Avatar de imath

    Hi wrkazi,

    In the functions.php of your active theme, you can try this, it seems to work :


    add_action('bp_actions', 'wrkazi_neutralize_map', 1);

    function wrkazi_neutralize_map(){
      global $bp;
      if( $bp->loggedin_user->id != $bp->displayed_user->id && bp_is_user_friends() ){
        remove_action('bp_actions', 'bp_checkins_load_gmap3');
        remove_action('bp_directory_members_actions', 'bp_checkins_add_friend_position', 99);
        remove_action('bp_before_member_friends_content', 'bp_checkins_load_friends_map');
      }
    }

  44. Avatar de wrkazi
    wrkazi

    @imath

    Brilliant!!!!!! Thanks a lottttttt…your code works perfectly fine…

    Thanks once again. Appreciate your time on this…and thanks for your wonderful plugin….

  45. Avatar de imath

    @ wrkazi

    you’re welcome 😉

  46. Avatar de wrkazi
    wrkazi

    @imath

    is it possible to force geolocation for each and every activity update? Currently the user can disable the geolocation by clicking on the « close » icon/image. In short there would be no « close » image/icon. Instead of the « close » image/icon a « refresh » location icon to update the geolocation would really help. I use the « close » button to update to my latest geolocation… some kind of code hack really appreciated.

    In case above cant be done easily then can this be done:

    The map market image/icon is not displayed properly in custom themes and certain browsers. instead of having the icon/image on top right hand side of the activity box possible to have it as a checkbox below the activity box? I had emailed you an image for this for you to get an idea.

    Kindly let me know

    Thanks for your time on this.

    1. Avatar de imath

      i saw your email, and i already read about the « refresh » location for mobile device,
      I don’t like the checkbox, i’m sorry i won’t use this. I think people can try to adapt the css of their theme.
      I’m still working on next version of this plugin, which will bring a lot of new features (that’s why it’s long), so i’ll try to find a way to ease the mobile device geolocation need of refresh

  47. Avatar de wrkazi
    wrkazi

    Thanks a lot for your reply @imath..appreciate it..looking forward to the new release of BP-Checkin…

    Possible to put in the new release a admin side setting to force geolocation for each and every activity update? I mean the admin can set force yes/no for all activity updates.

    If set to No then the current layout would come. That is the « close » image/icon.

    If set to Yes then « close » image/icon wont come and the map market image/icon is always shown on.

    Thanks once again.

  48. Avatar de Miguel

    Hi again @wrkazi @imath,

    Yes, ie9 too impredictable so far, but every body knows that here.

    About refresh button, I agree, useful specially for mobile. Question is how I update just a message if there is no cancel check-in button and you already had localize you?. check-box, may be, or Maybe a submit button that shows up after localizing, would say « send check-in » that updates everything and the regular button « update » to update just messages. Yeah, I know, 2 buttons, but could be better looking with well CCS. So, refresh button appears after localizing or even could be the same one of check-in (placemark icon) just changing function and shape. I don’t know, to complicated may be. Any idea?

  49. Avatar de wrkazi
    wrkazi

    @Miguel

    Did IE9 work for you? it works perfectly fine on me with bp-checkin. IE8 i believe doesn’t support geolocation.

    one button/image would do i guess.