Пример #1
0
 /**
  * Save user's Twitter-bridging preferences
  *
  * @return void
  */
 function savePreferences()
 {
     $noticesync = $this->boolean('noticesync');
     $friendsync = $this->boolean('friendsync');
     $replysync = $this->boolean('replysync');
     $user = common_current_user();
     $flink = Foreign_link::getByUserID($user->id, 1);
     if (!$flink) {
         common_log_db_error($flink, 'SELECT', __FILE__);
         $this->showForm(_('Couldn\'t save Twitter preferences.'));
         return;
     }
     $twitter_id = $flink->foreign_id;
     $password = $flink->credentials;
     $fuser = $flink->getForeignUser();
     if (!$fuser) {
         common_log_db_error($fuser, 'SELECT', __FILE__);
         $this->showForm(_('Couldn\'t save Twitter preferences.'));
         return;
     }
     $screen_name = $fuser->nickname;
     $original = clone $flink;
     $flink->set_flags($noticesync, $replysync, $friendsync);
     $result = $flink->update($original);
     if ($result === false) {
         common_log_db_error($flink, 'UPDATE', __FILE__);
         $this->showForm(_('Couldn\'t save Twitter preferences.'));
         return;
     }
     if ($friendsync) {
         save_twitter_friends($user, $flink->foreign_id, $screen_name, $password);
     }
     $this->showForm(_('Twitter preferences saved.'), true);
 }
Пример #2
0
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.     See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.     If not, see <http://www.gnu.org/licenses/>.
 */
# Abort if called from a web server
if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) {
    print "This script must be run from the command line\n";
    exit;
}
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
define('LACONICA', true);
require_once INSTALLDIR . '/lib/common.php';
$flink = new Foreign_link();
$flink->service = 1;
// Twitter
$flink->find();
while ($flink->fetch()) {
    if (($flink->friendsync & FOREIGN_FRIEND_RECV) == FOREIGN_FRIEND_RECV) {
        $user = User::staticGet($flink->user_id);
        print "Updating Twitter friends for user {$user->nickname} ({$user->id})\n";
        $fuser = $flink->getForeignUser();
        $result = save_twitter_friends($user, $fuser->id, $fuser->nickname, $flink->credentials);
        if ($result == false) {
            print "Problems updating Twitter friends! Check the log.\n";
            exit(1);
        }
    }
}
exit(0);