Chat section
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
<div ng-controller="ChatController" id="ChatController">
|
||||
|
||||
<div id="vertical-container" style="height: 600px" class="Output scrollable"><div ng-repeat="line in Output" ng-class="line.Class">{{line.Message}}</div></div>
|
||||
|
||||
<form ng-submit="SubmitCommand()" class="md-inline-form">
|
||||
<div>
|
||||
<input class="form-control" ng-model="Command" style="width: 100%">
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
@@ -64,6 +64,7 @@
|
||||
<script src="js/playerlist.js"></script>
|
||||
<script src="js/playerInfo.js"></script>
|
||||
<script src="js/playerXp.js"></script>
|
||||
<script src="js/chat.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -8,6 +8,7 @@ app.config( function ( $routeProvider )
|
||||
{
|
||||
$routeProvider.when( "/home", { Title: "Home" } )
|
||||
$routeProvider.when( "/:address/console", { Title: "Console", templateUrl: "html/console.html", Nav: true } )
|
||||
$routeProvider.when( "/:address/chat", { Title: "Chat", templateUrl: "html/chat.html", Nav: true } )
|
||||
$routeProvider.when( "/:address/playerlist", { Title: "Player List", templateUrl: "html/playerlist.html", Nav: true } )
|
||||
$routeProvider.when( "/:address/player/:userid", { Title: "Player Info", templateUrl: "html/playerInfo.html" } )
|
||||
$routeProvider.when( "/:address/player/:userid/xp", { Title: "Player Xp Stats", templateUrl: "html/playerXp.html" } )
|
||||
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
|
||||
app.controller( 'ChatController', ChatController );
|
||||
|
||||
function ChatController( $scope, rconService, $timeout )
|
||||
{
|
||||
$scope.Output = new Array();
|
||||
|
||||
$scope.SubmitCommand = function ()
|
||||
{
|
||||
$scope.Output.push( { Message: $scope.Command, Type: 'Command' } );
|
||||
|
||||
rconService.Command( "say " + $scope.Command, 1 );
|
||||
$scope.Command = "";
|
||||
}
|
||||
|
||||
$scope.$on( "OnMessage", function ( event, msg ) { $scope.OnMessage( msg ); } );
|
||||
|
||||
$scope.OnMessage = function( msg )
|
||||
{
|
||||
if ( msg.Type != "Chat" ) return;
|
||||
|
||||
msg.Class = msg.Type;
|
||||
msg.Message = msg.Message.substr( 7 );
|
||||
$scope.Output.push( msg );
|
||||
|
||||
$timeout( $scope.ScrollToBottom, 50 );
|
||||
}
|
||||
|
||||
$scope.ScrollToBottom = function()
|
||||
{
|
||||
// TODO - don't scroll if we're not at the bottom !
|
||||
$( "#ChatController .Output" ).scrollTop( $( "#ChatController .Output" )[0].scrollHeight );
|
||||
}
|
||||
|
||||
//
|
||||
// Calls console.tail - which returns the last 256 entries from the console.
|
||||
// This is then added to the console
|
||||
//
|
||||
$scope.GetHistory = function ()
|
||||
{
|
||||
console.log( "GetHistory" );
|
||||
|
||||
rconService.Request( "console.tail 4096", $scope, function ( msg )
|
||||
{
|
||||
var messages = JSON.parse( msg.Message );
|
||||
|
||||
messages.forEach( function ( x ) { $scope.OnMessage( x ); } );
|
||||
} );
|
||||
}
|
||||
|
||||
rconService.InstallService( $scope, $scope.GetHistory )
|
||||
}
|
||||
Reference in New Issue
Block a user