+ var source = move.substr(0, 2);
+ var target = move.substr(2, 2);
+ var promo = move.substr(4, 1);
+
+ // Check if we need to do en passant.
+ var piece = pos[source];
+ if (piece == "wP" || piece == "bP") {
+ if (source.substr(0, 1) != target.substr(0, 1) &&
+ pos[target] === undefined) {
+ var ep_square = target.substr(0, 1) + source.substr(1, 1);
+ delete pos[ep_square];
+ hiddenboard.position(pos, false);
+ }
+ }
+
+ move = source + "-" + target;