summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorBjoern Schiessle <schiessle@owncloud.com>2012-06-05 15:29:59 +0200
committerBjoern Schiessle <schiessle@owncloud.com>2012-06-05 15:29:59 +0200
commitedecc5bca3af674d3af8cd8506b5571146dc0357 (patch)
tree58cd465141e67a9385836d78793e8b0d3715cfd5 /lib
parent061abb88b568c4cdc35266fb8c32d1bfabcb8c8f (diff)
parentae915577487e4d12adba3e30e9fe8f34221191d8 (diff)
downloadnextcloud-server-edecc5bca3af674d3af8cd8506b5571146dc0357.tar.gz
nextcloud-server-edecc5bca3af674d3af8cd8506b5571146dc0357.zip
Merge branch 'master' of gitorious.org:owncloud/owncloud
Diffstat (limited to 'lib')
-rw-r--r--lib/base.php12
-rw-r--r--lib/group/backend.php12
-rw-r--r--lib/group/database.php22
-rw-r--r--lib/helper.php2
4 files changed, 25 insertions, 23 deletions
diff --git a/lib/base.php b/lib/base.php
index bdfd05e8f1d..641005c57c6 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -367,16 +367,18 @@ class OC{
// CSRF protection
if(isset($_SERVER['HTTP_REFERER'])) $referer=$_SERVER['HTTP_REFERER']; else $referer='';
- $protocol=OC_Helper::serverProtocol().'://';
+ $refererhost=parse_url($referer);
+ if(isset($refererhost['host'])) $refererhost=$refererhost['host']; else $refererhost='';
+ $server=OC_Helper::serverHost();
+ $serverhost=explode(':',$server);
+ $serverhost=$serverhost['0'];
if(!self::$CLI){
- $server=$protocol.OC_Helper::serverHost();
- if(($_SERVER['REQUEST_METHOD']=='POST') and (substr($referer,0,strlen($server))<>$server)) {
- $url = $protocol.OC_Helper::serverProtocol().OC::$WEBROOT.'/index.php';
+ if(($_SERVER['REQUEST_METHOD']=='POST') and ($refererhost<>$serverhost)) {
+ $url = OC_Helper::serverProtocol().'://'.$server.OC::$WEBROOT.'/index.php';
header("Location: $url");
exit();
}
}
-
self::initSession();
self::initTemplateEngine();
self::checkUpgrade();
diff --git a/lib/group/backend.php b/lib/group/backend.php
index 1b0b663f2ed..24778afd1e5 100644
--- a/lib/group/backend.php
+++ b/lib/group/backend.php
@@ -44,7 +44,7 @@ abstract class OC_Group_Backend {
OC_GROUP_BACKEND_ADD_TO_GROUP => 'addToGroup',
OC_GROUP_BACKEND_REMOVE_FROM_GOUP => 'removeFromGroup',
);
-
+
/**
* @brief Get all supported actions
* @returns bitwise-or'ed actions
@@ -62,7 +62,7 @@ abstract class OC_Group_Backend {
return $actions;
}
-
+
/**
* @brief Check if backend implements actions
* @param $actions bitwise-or'ed actions
@@ -83,7 +83,7 @@ abstract class OC_Group_Backend {
*
* Checks whether the user is member of a group or not.
*/
- public static function inGroup($uid, $gid){
+ public function inGroup($uid, $gid){
return in_array($gid, $this->getUserGroups($uid));
}
@@ -95,7 +95,7 @@ abstract class OC_Group_Backend {
* This function fetches all groups a user belongs to. It does not check
* if the user exists at all.
*/
- public static function getUserGroups($uid){
+ public function getUserGroups($uid){
return array();
}
@@ -105,7 +105,7 @@ abstract class OC_Group_Backend {
*
* Returns a list with all groups
*/
- public static function getGroups(){
+ public function getGroups(){
return array();
}
@@ -122,7 +122,7 @@ abstract class OC_Group_Backend {
* @brief get a list of all users in a group
* @returns array with user ids
*/
- public static function usersInGroup($gid){
+ public function usersInGroup($gid){
return array();
}
diff --git a/lib/group/database.php b/lib/group/database.php
index af55de1f427..fb173665eb8 100644
--- a/lib/group/database.php
+++ b/lib/group/database.php
@@ -41,7 +41,7 @@
* Class for group management in a SQL Database (e.g. MySQL, SQLite)
*/
class OC_Group_Database extends OC_Group_Backend {
- static private $userGroupCache=array();
+ private $userGroupCache=array();
/**
* @brief Try to create a new group
@@ -51,7 +51,7 @@ class OC_Group_Database extends OC_Group_Backend {
* Trys to create a new group. If the group name already exists, false will
* be returned.
*/
- public static function createGroup( $gid ){
+ public function createGroup( $gid ){
// Check for existence
$query = OC_DB::prepare( "SELECT gid FROM `*PREFIX*groups` WHERE gid = ?" );
$result = $query->execute( array( $gid ));
@@ -76,7 +76,7 @@ class OC_Group_Database extends OC_Group_Backend {
*
* Deletes a group and removes it from the group_user-table
*/
- public static function deleteGroup( $gid ){
+ public function deleteGroup( $gid ){
// Delete the group
$query = OC_DB::prepare( "DELETE FROM `*PREFIX*groups` WHERE gid = ?" );
$result = $query->execute( array( $gid ));
@@ -96,7 +96,7 @@ class OC_Group_Database extends OC_Group_Backend {
*
* Checks whether the user is member of a group or not.
*/
- public static function inGroup( $uid, $gid ){
+ public function inGroup( $uid, $gid ){
// check
$query = OC_DB::prepare( "SELECT uid FROM `*PREFIX*group_user` WHERE gid = ? AND uid = ?" );
$result = $query->execute( array( $gid, $uid ));
@@ -112,9 +112,9 @@ class OC_Group_Database extends OC_Group_Backend {
*
* Adds a user to a group.
*/
- public static function addToGroup( $uid, $gid ){
+ public function addToGroup( $uid, $gid ){
// No duplicate entries!
- if( !self::inGroup( $uid, $gid )){
+ if( !$this->inGroup( $uid, $gid )){
$query = OC_DB::prepare( "INSERT INTO `*PREFIX*group_user` ( `uid`, `gid` ) VALUES( ?, ? )" );
$result = $query->execute( array( $uid, $gid ));
return true;
@@ -131,7 +131,7 @@ class OC_Group_Database extends OC_Group_Backend {
*
* removes the user from a group.
*/
- public static function removeFromGroup( $uid, $gid ){
+ public function removeFromGroup( $uid, $gid ){
$query = OC_DB::prepare( "DELETE FROM *PREFIX*group_user WHERE uid = ? AND gid = ?" );
$result = $query->execute( array( $uid, $gid ));
@@ -146,7 +146,7 @@ class OC_Group_Database extends OC_Group_Backend {
* This function fetches all groups a user belongs to. It does not check
* if the user exists at all.
*/
- public static function getUserGroups( $uid ){
+ public function getUserGroups( $uid ){
// No magic!
$query = OC_DB::prepare( "SELECT gid FROM `*PREFIX*group_user` WHERE uid = ?" );
$result = $query->execute( array( $uid ));
@@ -165,7 +165,7 @@ class OC_Group_Database extends OC_Group_Backend {
*
* Returns a list with all groups
*/
- public static function getGroups(){
+ public function getGroups(){
$query = OC_DB::prepare( "SELECT gid FROM `*PREFIX*groups`" );
$result = $query->execute();
@@ -176,12 +176,12 @@ class OC_Group_Database extends OC_Group_Backend {
return $groups;
}
-
+
/**
* @brief get a list of all users in a group
* @returns array with user ids
*/
- public static function usersInGroup($gid){
+ public function usersInGroup($gid){
$query=OC_DB::prepare('SELECT uid FROM *PREFIX*group_user WHERE gid=?');
$users=array();
$result=$query->execute(array($gid));
diff --git a/lib/helper.php b/lib/helper.php
index aedac204058..decc1d61336 100644
--- a/lib/helper.php
+++ b/lib/helper.php
@@ -120,7 +120,7 @@ class OC_Helper {
*/
public static function linkToAbsolute( $app, $file ) {
$urlLinkTo = self::linkTo( $app, $file );
- $urlLinkTo = OC_Helper::serverProtocol(). '://' . self::serverHost() . $urlLinkTo;
+ $urlLinkTo = self::serverProtocol(). '://' . self::serverHost() . $urlLinkTo;
return $urlLinkTo;
}