array(                'url' => $image_url,                'caption' => $caption,                'published' => 'true',                'access_token' => QA_FB_PAGE_TOKEN            ),            'timeout' => 60        )    );} /* ==============================     TWITTER POST============================== */ function qa_post_to_twitter($image_url, $caption) {     // STEP 1: Upload media    $media_response = qa_twitter_oauth_request(        'https://upload.twitter.com/1.1/media/upload.json',        array('media' => base64_encode(file_get_contents($image_url))),        'POST'    );     if (empty($media_response->media_id_string)) return;     // STEP 2: Post tweet    qa_twitter_oauth_request(        'https://api.twitter.com/1.1/statuses/update.json',        array(            'status' => $caption,            'media_ids' => $media_response->media_id_string        ),        'POST'    );} /* ==============================     TWITTER OAUTH CORE============================== */ function qa_twitter_oauth_request($url, $params, $method = 'POST') {     $oauth = array(        'oauth_consumer_key' => QA_TW_CONSUMER_KEY,        'oauth_token' => QA_TW_ACCESS_TOKEN,        'oauth_nonce' => wp_generate_password(12, false),        'oauth_timestamp' => time(),        'oauth_signature_method' => 'HMAC-SHA1',        'oauth_version' => '1.0'    );     $base_params = array_merge($oauth, $params);    ksort($base_params);     $base_string = strtoupper($method) . "&" .        rawurlencode($url) . "&" .        rawurlencode(http_build_query($base_params, '', '&', PHP_QUERY_RFC3986));     $signing_key = rawurlencode(QA_TW_CONSUMER_SECRET) . '&' .                   rawurlencode(QA_TW_ACCESS_SECRET);     $oauth['oauth_signature'] = base64_encode(        hash_hmac('sha1', $base_string, $signing_key, true)    );     $header = 'OAuth ';    $values = array();    foreach ($oauth as $key => $value) {        $values[] = $key . '="' . rawurlencode($value) . '"';    }    $header .= implode(', ', $values);     $args = array(        'headers' => array('Authorization' => $header),        'body' => $params,        'timeout' => 60    );     $response = wp_remote_request($url, array_merge($args, array('method' => $method)));     return json_decode(wp_remote_retrieve_body($response));} India pays the price for feud with Pakistan – TIMES OF ISLAMABAD
Times of Islamabad

India pays the price for feud with Pakistan

India pays the price for feud with Pakistan

NEW DELHI – International Tennis Federation (ITF) has stripped India of thehosting rights for two major international tournaments amid escalationswith Pakistan.

According to media reports, the visa denial to Pakistani players has costIndia the rights to host Junior Davis Cup and Fed Cup. Both tournamentswere initially scheduled to take place next month in Delhi, have now beenmoved to Bangkok.

Additionally, the governing body had primarily two main reasons to call offthe event:

First – All India Tennis Association (AITA) failed to provide a writtenguarantee that the Pakistani contingent for both tennis events would begranted visa without any procedural delay.——————————

Second – After unstable ties between India and Pakistan, the safety of theplayers was at risk.

The drama began when Indian authorities, in the aftermath of the PulwamaAttack in which 44 paramilitary soldiers were killed, banned entry ofPakistani players amid the escalating tensions.

Participants from Pakistan were refused visa for the ISSF World Cup in theIndian Capital last month.

In response to this boycott, United World Wrestling (UWW) stripped India ofthe hosting rights of Junior Asian Championship. The body also directed allits affiliated body to cut sporting ties with India.