* @return array|\OC_OCS_Result
*/
public static function mergeResponses($responses) {
- // Sort into shipped and thirdparty
+ // Sort into shipped and third-party
$shipped = array(
'succeeded' => array(),
'failed' => array(),
if(!empty($shipped['failed'])) {
// Which shipped response do we use if they all failed?
// They may have failed for different reasons (different status codes)
- // Which reponse code should we return?
+ // Which response code should we return?
// Maybe any that are not OC_API::RESPOND_SERVER_ERROR
// Merge failed responses if more than one
$data = array();
// reuse existing login
$loggedIn = OC_User::isLoggedIn();
- $ocsApiRequest = isset($_SERVER['HTTP_OCS_APIREQUEST']) ? $_SERVER['HTTP_OCS_APIREQUEST'] === 'true' : false;
- if ($loggedIn === true && $ocsApiRequest) {
+ if ($loggedIn === true) {
+ $ocsApiRequest = isset($_SERVER['HTTP_OCS_APIREQUEST']) ? $_SERVER['HTTP_OCS_APIREQUEST'] === 'true' : false;
+ if ($ocsApiRequest) {
- // initialize the user's filesystem
- \OC_Util::setUpFS(\OC_User::getUser());
+ // initialize the user's filesystem
+ \OC_Util::setUpFS(\OC_User::getUser());
- return OC_User::getUser();
+ return OC_User::getUser();
+ }
+ return false;
}
- // basic auth
- $authUser = isset($_SERVER['PHP_AUTH_USER']) ? $_SERVER['PHP_AUTH_USER'] : '';
- $authPw = isset($_SERVER['PHP_AUTH_PW']) ? $_SERVER['PHP_AUTH_PW'] : '';
- $return = OC_User::login($authUser, $authPw);
- if ($return === true) {
- self::$logoutRequired = true;
+ // basic auth - because OC_User::login will create a new session we shall only try to login
+ // if user and pass are set
+ if(isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW']) ) {
+ $authUser = $_SERVER['PHP_AUTH_USER'];
+ $authPw = $_SERVER['PHP_AUTH_PW'];
+ $return = OC_User::login($authUser, $authPw);
+ if ($return === true) {
+ self::$logoutRequired = true;
- // initialize the user's filesystem
- \OC_Util::setUpFS(\OC_User::getUser());
+ // initialize the user's filesystem
+ \OC_Util::setUpFS(\OC_User::getUser());
- return $authUser;
+ return $authUser;
+ }
}
return false;