changelog shortlog tags manifest raw

changeset: add jpoker.servers.urls to fix testsuite over file://

changeset 735: 89bfc97858b0
parent 734:67e7c03b8736
child 736:39120991a17b
author: root@kun
date: Mon Aug 18 14:55:37 2008 +0000 (3 months ago)
files: jpoker/js/jquery.jpoker.js jpoker/js/test-jpoker.js
description: add jpoker.servers.urls to fix testsuite over file://
--- a/jpoker/js/jquery.jpoker.js	Mon Aug 18 12:32:43 2008 +0000
+++ b/jpoker/js/jquery.jpoker.js	Mon Aug 18 14:55:37 2008 +0000
@@ -542,6 +542,15 @@
                 this.queues = {};
                 this.delays = {};
                 this.session = 'name=' + jpoker.url2hash(this.url);
+		if (this.urls === undefined) {
+		    this.urls = {};		    
+		}
+		if (this.urls.avatar === undefined) {
+		    this.urls.avatar = this.url.substr(0, this.url.lastIndexOf('/')+1) + 'AVATAR';
+		}
+		if (this.urls.upload === undefined) {
+		    this.urls.upload = this.url.substr(0, this.url.lastIndexOf('/')+1) + 'UPLOAD';
+		}
                 this.reset();
             },
 
@@ -2681,15 +2690,15 @@
                 avatar_element.removeClass().addClass('jpoker_avatar jpoker_ptable_player_seat' + seat + '_avatar jpoker_avatar_default_' + avatar);
 		avatar_element.show();
 	    }
-	    var avatar_url = '/AVATAR/'+serial;
+	    var avatar_url = server.urls.avatar+'/'+serial;
 	    server.ajax({url: avatar_url,
 			type: 'GET',
 			global: false,
 			success: function(data, status) {
 			avatar_element.css({
 				'background-image': 'url("' + avatar_url + '")',
-				    'display': 'block'
-				    });
+				'display': 'block'
+				});
 		    }
 		});
 	    var timeout_element = $('#player_seat' + seat  + '_timeout' + id);
@@ -3227,7 +3236,7 @@
 			    if (packet.set_account) {
 				$('.jpoker_user_info_feedback', element).text(_("Updated"));
 			    }
-			    var avatar_url = '/AVATAR/'+server.serial;
+			    var avatar_url = server.urls.avatar+'/'+server.serial;
 			    var avatar_preview = $('.jpoker_user_info_avatar_preview', element);
 			    avatar_preview.css({
 				    'background-image': 'url("' + avatar_url + '")',
@@ -3285,14 +3294,16 @@
 		    'birthdate_title' : _("Birthdate"),
 		    'submit_title': _("Update personal info")
 		}, packet)));
+	var server = jpoker.getServer(url);
 	html.push(t.avatar.supplant({'hash': jpoker.url2hash(url),
+			             'upload_url' : server.urls.upload,
 			             'upload': _("Upload avatar")}));
         return html.join('\n');
     };
 
     jpoker.plugins.userInfo.templates = {
 	info: '<table><tr><td>{name_title}</td><td><div class=\'jpoker_user_info_name\'>{name}</div></input></td></tr><tr><td>{password_title}</td><td><input type=\'password\' name=\'password\' value=\'{password}\'></input></td></tr><tr><td>{toggle_password_title}</td><td><input type=\'checkbox\' name=\'toggle_password\'></input></td></tr><tr><td>{email_title}</td><td><input type=\'text\' name=\'email\' value=\'{email}\'></input></td></tr><tr><td>{phone_title}</td><td><input type=\'text\' name=\'phone\' value=\'{phone}\'></input></td></tr><tr><td>{firstname_title}</td><td><input type=\'text\' name=\'firstname\' value=\'{firstname}\'></input></td></tr><tr><td>{lastname_title}</td><td><input type=\'text\' name=\'lastname\' value=\'{lastname}\'></input></td></tr><tr><td>{addr_street_title}</td><td><input type=\'text\' name=\'addr_street\' value=\'{addr_street}\'></input></td></tr><tr><td>{addr_street2_title}</td><td><input type=\'text\' name=\'addr_street2\' value=\'{addr_street2}\'></input></td></tr><tr><td>{addr_zip_title}</td><td><input type=\'text\' name=\'addr_zip\' value=\'{addr_zip}\'></input></td></tr><tr><td>{addr_town_title}</td><td><input type=\'text\' name=\'addr_town\' value=\'{addr_town}\'></input></td></tr><tr><td>{addr_state_title}</td><td><input type=\'text\' name=\'addr_state\' value=\'{addr_state}\'></input></td></tr><tr><td>{addr_country_title}</td><td><input type=\'text\' name=\'addr_country\' value=\'{addr_country}\'></input></td></tr><tr><td>{gender_title}</td><td><input type=\'text\' name=\'gender\' value=\'{gender}\'></input></td></tr><tr><td>{birthdate_title}</td><td><input type=\'text\' name=\'birthdate\' value=\'{birthdate}\'></input></td></tr><tr><td><input class=\'jpoker_user_info_submit\' type=\'submit\' value=\'{submit_title}\'></input></td><td><div class=\'jpoker_user_info_feedback\'></div></td></tr></table>',
-	avatar: '<div class=\'jpoker_user_info_avatar_preview\'></div><form class=\'jpoker_user_info_avatar_upload\' action=\'/UPLOAD?name={hash}\' method=\'post\' enctype=\'multipart/form-data\'><input type=\'file\' name=\'filename\'></input><input type=\'submit\' value=\'{upload}\'></input></form><div class=\'jpoker_user_info_avatar_upload_feedback\'></div>'
+	avatar: '<div class=\'jpoker_user_info_avatar_preview\'></div><form class=\'jpoker_user_info_avatar_upload\' action=\'{upload_url}?name={hash}\' method=\'post\' enctype=\'multipart/form-data\'><input type=\'file\' name=\'filename\'></input><input type=\'submit\' value=\'{upload}\'></input></form><div class=\'jpoker_user_info_avatar_upload_feedback\'></div>'
     };
 
     jpoker.plugins.muck = {
--- a/jpoker/js/test-jpoker.js	Mon Aug 18 12:32:43 2008 +0000
+++ b/jpoker/js/test-jpoker.js	Mon Aug 18 14:55:37 2008 +0000
@@ -1203,6 +1203,25 @@
 	server.setState(undefined);	
     });
 
+test("jpoker.server.urls", function() {
+	expect(8);
+	var server = jpoker.serverCreate({ url: 'http://host/POKER_REST' });
+	equals(server.urls.avatar, 'http://host/AVATAR');
+	equals(server.urls.upload, 'http://host/UPLOAD');
+	
+	server = jpoker.serverCreate({ url: '/POKER_REST' });
+	equals(server.urls.avatar, '/AVATAR');
+	equals(server.urls.upload, '/UPLOAD');
+
+	server = jpoker.serverCreate({ url: 'url' });
+	equals(server.urls.avatar, 'AVATAR');
+	equals(server.urls.upload, 'UPLOAD');
+
+	server = jpoker.serverCreate({ url: 'url', urls: {avatar: 'avatar', upload: 'upload'}});
+	equals(server.urls.avatar, 'avatar');
+	equals(server.urls.upload, 'upload');
+    });
+
 //
 // jpoker.connection
 //
@@ -3287,11 +3306,11 @@
         start_and_cleanup();
     });
 
-test("jpoker.plugins.player: /AVATAR", function(){
-        expect(1);
-        stop();
-
-        var server = jpoker.serverCreate({ url: 'url' });
+test("jpoker.plugins.player: avatar", function(){
+        expect(1);
+        stop();
+
+        var server = jpoker.serverCreate({ url: 'url', urls : {avatar : 'http://avatar-server/'}});
         var place = $("#main");
         var id = 'jpoker' + jpoker.serial;
         var game_id = 100;
@@ -3310,9 +3329,8 @@
 	    options.success('data', 'status');
 	};
         table.handler(server, game_id, { type: 'PacketPokerPlayerArrive', seat: player_seat, serial: player_serial, game_id: game_id });
-        var player = server.tables[game_id].serial2player[player_serial];
         var background = $("#player_seat2_avatar" + id).css('background-image');
-	ok(background.indexOf("AVATAR/1") >= 0, "AVATAR serial");
+	ok(background.indexOf('/1') >= 0, 'avatar');
 	jpoker.plugins.muck.sendAutoMuck = send_auto_muck;
         start_and_cleanup();
     });
@@ -3864,7 +3882,7 @@
 
 
 test("jpoker.plugins.userInfo", function(){
-        expect(24);
+        expect(22);
 	stop();
 
         var server = jpoker.serverCreate({ url: 'url' });
@@ -3914,8 +3932,6 @@
 			equals($('input[name=gender]', element).val(), 'Male');
 			equals($('input[name=birthdate]', element).val(), '01/01/1970');
 			equals($('input[type=submit]').length, 2, 'user info submit');
-			equals($('.jpoker_user_info_avatar_preview').length, 1, 'user info avatar preview');
-			ok($('.jpoker_user_info_avatar_preview').css('background-image').indexOf('/AVATAR/42') >= 0, 'user info avatar preview');
 			equals($('.jpoker_user_info_avatar_upload input[type=submit]').length, 1, 'user info avatar submit');
 			$('#' + id).remove();
 		    }
@@ -3997,12 +4013,10 @@
     });
 
 test("jpoker.plugins.userInfo avatar upload succeed", function(){
-        expect(5);
-	stop();
-
-        var server = jpoker.serverCreate({ url: 'url' });
-        jpoker.serverDestroy('url');
-        server = jpoker.serverCreate({ url: 'url' });
+        expect(8);
+	stop();
+
+        var server = jpoker.serverCreate({ url: 'url', urls: {avatar: 'http://avatar-server/'}});
         server.connectionState = 'connected';
 
 	server.serial = 42;
@@ -4020,7 +4034,7 @@
 		$(".jpoker_user_info_avatar_preview", element).css("background-image", "none");
 		options.success('<pre>image uploaded</pre>');
 		equals($(".jpoker_user_info_avatar_upload_feedback", element).text(), "Uploaded");
-		ok($(".jpoker_user_info_avatar_preview", element).css("background-image").indexOf("/AVATAR/42") >= 0, "avatar preview updated");
+		ok($(".jpoker_user_info_avatar_preview", element).css("background-image").indexOf("/42") >= 0, "avatar preview updated");
 		start_and_cleanup();
 	    };
 	};
@@ -4029,8 +4043,11 @@
 		    var element = $('#' + id);
 		    if(element.length > 0) {
 			ok($(".jpoker_user_info_avatar_upload", element).attr("action").indexOf(jpoker.url2hash('url')) >= 0, 'session hash');
+			ok($(".jpoker_user_info_avatar_upload", element).attr("action").indexOf(server.urls.upload) >= 0, 'upload url');
 			equals($(".jpoker_user_info_avatar_upload_feedback", element).text(), '');
-			ajaxFormCallback();			
+			equals($('.jpoker_user_info_avatar_preview').length, 1, 'user info avatar preview');
+			ok($('.jpoker_user_info_avatar_preview').css('background-image').indexOf('42') >= 0, 'user info avatar preview');
+			ajaxFormCallback();	
 			return false;
 		    }
 		});
@@ -4043,9 +4060,7 @@
         expect(1);
 	stop();
 
-        var server = jpoker.serverCreate({ url: 'url' });
-        jpoker.serverDestroy('url');
-        server = jpoker.serverCreate({ url: 'url' });
+        var server = jpoker.serverCreate({ url: 'url', urls: {avatar: 'http://avatar-server/'}});
         server.connectionState = 'connected';
 
 	server.serial = 42;