In an attempt to simplify the module. I thought (and @josereyero told me as well) that removing the relationship between a Drupal user and the Twitter accounts would simplify the module and the user experience.

Here is a patch were the Twitter tab lists all authorized accounts. I also want to add the ability to manage "searches" so you can type whatever you want (normally a hashtag) and the module will perform a search and save the tweets

remove_user_dependency.png

Opinions?

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

xurizaemon’s picture

For those using twitter on a site level (eg to post as $ORGANISATION or running a personal site only) this makes sense.

Are you thinking to retain the existing functionality for sites with multiple authors / twitter accounts?

juampynr’s picture

FileSize
57.36 KB

Yes, but I am not sure how to accomplish it.

I have implemented the ability to add non-authenticated accounts, as this is a big limitation once you enable OAuth (I remember that you mentioned it once). See the attached screenshot.

@grobot, could you give me your opinion about this path with a bit more detail? At the moment I have got the feeling that it will give much more flexibility to the user. I also want to add the ability to add tweets based on a search. Furthermore, I will move the Add account form to another tab.

twitter.png

xurizaemon’s picture

Might not need a separate tab. If "Save changes" was moved inside the table (bottom right) then we could put the "Add account" buttons into their own fieldset (possibly *above* the existing account table).

Delete should be a button too, checkbox is positive UI and delete is a negative verb, it's confusing. (See #529110: Users misunderstand "Remove” checkbox on cart page for an unrelated issue which tested very similar UI.)

I think it's OK to optionally decouple drupal user/twitter account, but I think it's worth retaining the optional connection.

Some users should be able to access only an account they've got permission for (eg a forum site where users have the option to post their threads as tweets), while other users should have access to the site accounts (a news site where an author wants to post an article to the site twitter feed).

So I imagine we'd end up with two permissions, "Access site Twitter accounts" (maybe "global" is no longer the right word here, it won't apply to users which lack this permission) and "Access own Twitter accounts". Use the same form(s) to add accounts, but run checks for the originating page (user/%/edit/twitter or admin/config/services/twitter) and the user's permissions when assigning the account as either sitewide (uid=NULL) or per-user (uid=N).

A thought - I wonder if our OAuth supports two users of a Drupal site adding the same Twitter account?

juampynr’s picture

I am not sure how to implement a confirm_form() within the table as the whole table is already a form.

I have addded a field added_by_uid so we can know which user added which Twitter account. Users with post permissions may use Twitter accounts added by them or Twitter accounts added to admin/config/services/twitter.

Two users cannot add the same Twitter account (well they can, but the latter will override the former). I think we should not allow it and simply return an error when a Twitter account has been added already by other user.

juampynr’s picture

FileSize
77.24 KB

I have improved the Add account form and created permissions so additional roles can add authenticated or non-authenticated Twitter accounts.

admin_page.png

Renamed the branch from unlink-users to 7.x-5.x.

Pending to review twitter_signin, twitter_post and twitter_actions submodules.

juampynr’s picture

Status: Active » Fixed

twitter_post, twitter_signin and twitter_actions have been updated. I am going to reincorporate twitter.lib.php (#1853794: Please consider restoring twitter.lib.php to the Twitter module) and make a new release.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.