Login through Steam einbinden

08/30/2015 13:32 traderjoee#1
Brauche Hilfe bei folgender Sache:

Ich hab das CMS System Webspell installiert, das erstmal als Information.


Ich möchte das es in meinem Forum möglich ist, sich per Steam zu registrieren/einzuloggen, finde im Internet dazu aber keine Anleitung oder ähnliches. Würde mir da jemand helfen? Oder ein Link zu einer Anleitung schicken?



MfG
08/30/2015 15:34 manniL#2
Das ist nicht ohne weiteres möglich, da für Webspell kein Addon entwickelt wurde, welche den Login per Steam ermöglichte. Insofern müsste dann eigens für dich ein solches Addon programmiert werden.

Best regards
08/30/2015 16:55 traderjoee#3
Quote:
Originally Posted by manniL View Post
Das ist nicht ohne weiteres möglich, da für Webspell kein Addon entwickelt wurde, welche den Login per Steam ermöglichte. Insofern müsste dann eigens für dich ein solches Addon programmiert werden.

Best regards
heißt ein einfaches einbinden bringt nix?
08/30/2015 19:15 ComputerBaer#4
Quote:
Originally Posted by traderjoee View Post
heißt ein einfaches einbinden bringt nix?
Heißt einfaches einbinden ist bisher nicht möglich. Wenn sich jemand die Mühe macht und es programmiert, dann ist es möglich. Also ohne programmieren wird das nichts.

(Baut auf den Informationen von manniL auf.)
08/31/2015 01:19 manniL#5
Quote:
Originally Posted by traderjoee View Post
heißt ein einfaches einbinden bringt nix?
Quote:
Originally Posted by ComputerBaer View Post
Heißt einfaches einbinden ist bisher nicht möglich. Wenn sich jemand die Mühe macht und es programmiert, dann ist es möglich. Also ohne programmieren wird das nichts.

(Baut auf den Informationen von manniL auf.)
Genau so sieht es aktuell aus.

Ein CMS, welches solch eine Login-Funktion (durch ein entsprechendes Addon) unterstützt, ist Wordpress. Das dazugehörige Addon ist [Only registered and activated users can see links. Click Here To Register...].

Falls du nach wie vor nach einer Lösung für Webspell suchst, dann brauchst du wohl einen (bezahlten) Entwickler, welchen du im Coders Black Market Bereich suchen kannst.
08/31/2015 07:27 traderjoee#6
Quote:
Originally Posted by manniL View Post
Genau so sieht es aktuell aus.

Ein CMS, welches solch eine Login-Funktion (durch ein entsprechendes Addon) unterstützt, ist Wordpress. Das dazugehörige Addon ist [Only registered and activated users can see links. Click Here To Register...].

Falls du nach wie vor nach einer Lösung für Webspell suchst, dann brauchst du wohl einen (bezahlten) Entwickler, welchen du im Coders Black Market Bereich suchen kannst.
Vielen Dank für die schnellen Antworten. Was meint ihr wieviel würde sowas kosten ein "Social Media Plugin" /Steam Plugin für Webspell CMS zu realisieren?
08/31/2015 08:44 ChilloutFuzi#7
Schau dir das mal an [Only registered and activated users can see links. Click Here To Register...]
Wenn ich eine Website schreibe mit Steamlogin dann nutze ich dieses Script.
08/31/2015 09:59 traderjoee#8
Quote:
Originally Posted by ChilloutFuzi View Post
Schau dir das mal an [Only registered and activated users can see links. Click Here To Register...]
Wenn ich eine Website schreibe mit Steamlogin dann nutze ich dieses Script.
Die Frage ist das kompatibel mit dem Webspell CMS System?
08/31/2015 10:37 manniL#9
Quote:
Originally Posted by traderjoee View Post
Vielen Dank für die schnellen Antworten. Was meint ihr wieviel würde sowas kosten ein "Social Media Plugin" /Steam Plugin für Webspell CMS zu realisieren?
Das kommt ganz auf Umfang, also auf den Aufwand und die Arbeitsstunden für den Entwickler, drauf an. Bei seriösen Programmieren die auch ein Gewerbe haben, ist der Preis wahrscheinlich im unteren dreistelligen Bereich, eventuell im oberen Zweistelligen.
Hier auf epvp solltest du im mittleren zweistelligen Bereich liegen, wenn du die richtigen Leute findest. Also ~50€
09/01/2015 16:07 FiddleRust#10
Had this source on my computer for long time
Code:
<?php
/**
*
* @package Steam Community API
* @copyright (c) 2010 ichimonai.com
* @license http://opensource.org/licenses/mit-license.php The MIT License
*
*/

class SteamSignIn
{
	const STEAM_LOGIN = 'https://steamcommunity.com/openid/login';

	/**
	* Get the URL to sign into steam
	*
	* @param mixed returnTo URI to tell steam where to return, MUST BE THE FULL URI WITH THE PROTOCOL
	* @param bool useAmp Use & in the URL, true; or just &, false. 
	* @return string The string to go in the URL
	*/
	public static function genUrl($returnTo = false, $useAmp = true)
	{
		$returnTo = (!$returnTo) ? (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] : $returnTo;
		
		$params = array(
			'openid.ns'			=> 'http://specs.openid.net/auth/2.0',
			'openid.mode'		=> 'checkid_setup',
			'openid.return_to'	=> $returnTo,
			'openid.realm'		=> (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'],
			'openid.identity'	=> 'http://specs.openid.net/auth/2.0/identifier_select',
			'openid.claimed_id'	=> 'http://specs.openid.net/auth/2.0/identifier_select',
		);
		
		$sep = ($useAmp) ? '&' : '&';
		return self::STEAM_LOGIN . '?' . http_build_query($params, '', $sep);
	}
	
	/**
	* Validate the incoming data
	*
	* @return string Returns the SteamID64 if successful or empty string on failure
	*/
	public static function validate()
	{
		// Star off with some basic params
		$params = array(
			'openid.assoc_handle'	=> $_GET['openid_assoc_handle'],
			'openid.signed'			=> $_GET['openid_signed'],
			'openid.sig'			=> $_GET['openid_sig'],
			'openid.ns'				=> 'http://specs.openid.net/auth/2.0',
		);
		
		// Get all the params that were sent back and resend them for validation
		$signed = explode(',', $_GET['openid_signed']);
		foreach($signed as $item)
		{
			$val = $_GET['openid_' . str_replace('.', '_', $item)];
			$params['openid.' . $item] = get_magic_quotes_gpc() ? stripslashes($val) : $val; 
		}

		// Finally, add the all important mode. 
		$params['openid.mode'] = 'check_authentication';
		
		// Stored to send a Content-Length header
		$data =  http_build_query($params);
		$context = stream_context_create(array(
			'http' => array(
				'method'  => 'POST',
				'header'  => 
					"Accept-language: en\r\n".
					"Content-type: application/x-www-form-urlencoded\r\n" .
					"Content-Length: " . strlen($data) . "\r\n",
				'content' => $data,
			),
		));

		$result = file_get_contents(self::STEAM_LOGIN, false, $context);
		
		// Validate wheather it's true and if we have a good ID
		preg_match("#^http://steamcommunity.com/openid/id/([0-9]{17,25})#", $_GET['openid_claimed_id'], $matches);
		$steamID64 = is_numeric($matches[1]) ? $matches[1] : 0;

		// Return our final value
		return preg_match("#is_valid\s*:\s*true#i", $result) == 1 ? $steamID64 : '';
	}
}