Пример #1
0
 ll _query_(int o,int l,int r){
     if (ql<=l && r<=qr)
         return minv[o];
     ll ans=INF;
     int m=l+(r-l)/2;
     if (ql<=m)
         ans=min(ans,_query_(o*2,l,m));
     if (qr>=m+1)
         ans=min(ans,_query_(o*2+1,m+1,r));
     return ans;
 }
Пример #2
0
 ll query(int l,int r){
     if (l>r)
         return INF;
     ql=l;
     qr=r;
     return _query_(1,1,n);
 }
Пример #3
0
void Petrel::postListSubscriber(quint64 list_id, quint64 id){

    QString requestStr("http://api.twitter.com/1/"+m_userid+"/"+QString::number(list_id,10)+"/subscribers.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(id!=0) requestUrl.addQueryItem("id",QString::number(id,10));
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), POST_LIST_SUBSCRIBER);
    issuePostRequest(req,_query_);

}
Пример #4
0
void Petrel::updateDeliveryDevice(const QString& device){

    QString requestStr("http://api.twitter.com/1/account/update_delivery_device.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(device!="") requestUrl.addQueryItem("device",device);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), UPDATE_DELIVERY_DEVICE);
    issuePostRequest(req,_query_);

}
Пример #5
0
void Petrel::createFavorite(quint64 id){

    QString requestStr("http://api.twitter.com/1/favorites/create/"+QString::number(id,10)+".xml");
    QUrl requestUrl(requestStr);
    //addQueryItem

    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), CREATE_FAVORITE);
    issuePostRequest(req,_query_);

}
Пример #6
0
void Petrel::retweet(quint64 id){

    QString requestStr("http://api.twitter.com/1/statuses/retweet/"+QString::number(id,10)+".xml");
    QUrl requestUrl(requestStr);
    //addQueryItem

    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), RETWEET);
    issuePutRequest(req,_query_);

}
Пример #7
0
void Petrel::createSavedSearch(const QString& query){

    QString requestStr("http://api.twitter.com/1/saved_searches/create.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(query!="") requestUrl.addQueryItem("query",query);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), CREATE_SAVED_SEARCH);
    issuePostRequest(req,_query_);

}
Пример #8
0
void Petrel::createBlock(quint64 id, quint64 user_id, const QString& screen_name){

    QString requestStr("http://api.twitter.com/1/blocks/create/"+QString::number(id,10)+".xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(user_id!=0) requestUrl.addQueryItem("user_id",QString::number(user_id,10));
    if(screen_name!="") requestUrl.addQueryItem("screen_name",screen_name);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), CREATE_BLOCK);
    issuePostRequest(req,_query_);

}
Пример #9
0
void Petrel::newDirectMessage(const QString& user, const QString& text){

    QString requestStr("http://api.twitter.com/1/direct_messages/new.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(user!="") requestUrl.addQueryItem("user",user);
    if(text!="") requestUrl.addQueryItem("text",text);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), NEW_DIRECT_MESSAGE);
    issuePostRequest(req,_query_);

}
Пример #10
0
void Petrel::leaveNotification(quint64 id, quint64 user_id, const QString& screen_name){

    QString requestStr("http://api.twitter.com/1/notifications/leave/"+QString::number(id,10)+".xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(user_id!=0) requestUrl.addQueryItem("user_id",QString::number(user_id,10));
    if(screen_name!="") requestUrl.addQueryItem("screen_name",screen_name);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), LEAVE_NOTIFICATION);
    issuePostRequest(req,_query_);

}
Пример #11
0
void Petrel::reportSpam(quint64 id, quint64 user_id, const QString& screen_name){

    QString requestStr("http://api.twitter.com/1/report_spam.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(id!=0) requestUrl.addQueryItem("id",QString::number(id,10));
    if(user_id!=0) requestUrl.addQueryItem("user_id",QString::number(user_id,10));
    if(screen_name!="") requestUrl.addQueryItem("screen_name",screen_name);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), REPORT_SPAM);
    issuePostRequest(req,_query_);

}
Пример #12
0
void Petrel::updateProfile(const QString& name, const QString& url, const QString& location, const QString& description){

    QString requestStr("http://api.twitter.com/1/account/update_profile.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(name!="") requestUrl.addQueryItem("name",name);
    if(url!="") requestUrl.addQueryItem("url",url);
    if(location!="") requestUrl.addQueryItem("location",location);
    if(description!="") requestUrl.addQueryItem("description",description);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), UPDATE_PROFILE);
    issuePostRequest(req,_query_);

}
Пример #13
0
void Petrel::update(const QString& status, quint64 in_reply_to_status_id, const QString& lat, const QString& long_){

    QString requestStr("http://api.twitter.com/1/statuses/update.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(status!="") requestUrl.addQueryItem("status",status);
    if(in_reply_to_status_id!=0) requestUrl.addQueryItem("in_reply_to_status_id",QString::number(in_reply_to_status_id,10));
    if(lat!="") requestUrl.addQueryItem("lat",lat);
    if(long_!="") requestUrl.addQueryItem("long",long_);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), UPDATE);
    issuePostRequest(req,_query_);

}
Пример #14
0
void Petrel::postListsId(const QString& name, const QString& mode, const QString& description, quint64 list_id, quint64 id){

    QString requestStr("http://api.twitter.com/1/"+m_userid+"/lists/"+QString::number(id,10)+".xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(name!="") requestUrl.addQueryItem("name",name);
    if(mode!="") requestUrl.addQueryItem("mode",mode);
    if(description!="") requestUrl.addQueryItem("description",description);
    if(list_id!=0) requestUrl.addQueryItem("list_id",QString::number(list_id,10));
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), POST_LISTS_ID);
    issuePutRequest(req,_query_);

}
Пример #15
0
void Petrel::updateProfileColor(const QString& profile_background_color, const QString& profile_text_color, const QString& profile_link_color, const QString& profile_sidebar_fill_color, const QString& profile_sidebar_border_color){

    QString requestStr("http://api.twitter.com/1/account/update_profile_colors.xml");
    QUrl requestUrl(requestStr);
    //addQueryItem
    if(profile_background_color!="") requestUrl.addQueryItem("profile_background_color",profile_background_color);
    if(profile_text_color!="") requestUrl.addQueryItem("profile_text_color",profile_text_color);
    if(profile_link_color!="") requestUrl.addQueryItem("profile_link_color",profile_link_color);
    if(profile_sidebar_fill_color!="") requestUrl.addQueryItem("profile_sidebar_fill_color",profile_sidebar_fill_color);
    if(profile_sidebar_border_color!="") requestUrl.addQueryItem("profile_sidebar_border_color",profile_sidebar_border_color);
    QByteArray _query_(requestUrl.encodedQuery());
    QNetworkRequest req(requestUrl.toString(QUrl::RemoveQuery));
    req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + ATTR_ROLE), UPDATE_PROFILE_COLOR);
    issuePostRequest(req,_query_);

}