urlencode in Pawn
When creating new REST-ful API for GTAT (based upon my pwncurl and a lua backend) I had to implement the method urlencode in pawn.
So I took a look at the specification in RFC 1738 to get information about what characters need to be encoded.
RFC 1738: Only alphanumerics, the special characters "$-_.+!*'(),", and reserved characters used for their reserved purposes may be used unencoded within a URL.
Since I really want to be sure that all is encoded properly and %xx encoding is
Morph css background-position in Internet Explorer
If you try to set the CSS-property background-position in Internet Explorer (I tested with 7) and even use that with Mootools' morph/tween-functions, it will not work.
You can workaround that issue, if you set also background-position-x and background-position-y (actually ignored by my Firefox 3.0).
This is the code, I use at koala to move the background upwards.
2
3
4
'background-position':'0 -140px',
'background-position-y':'-140px',
});
Renaming a file in Pawn
If you are using pawn (for instance in san andreas multiplayer) and want to rename a file, you'll not find a method like frename.
You can either use my dutils (pawn only solution) or a plugin (like Yless' YSF) to add frename to your functions.
If you want to make a plain pawn solution, and don't want to use dutils, here is how I made it.
There are two steps.
First you'll need fcopy (copies the file):
2
3
4
5
6
7
8
9
nhnd=fopen(newname,io_write);
new buf2[1];
new i;
for (i=flength(ohnd);i>0;i--) {
fputchar(nhnd, fgetchar(ohnd, buf2[0],false),false);
}
fclose(ohnd);
fclose(nhnd);
And then you'll need to remove the old file.
Remember, that on linux those methods will not work (since fputchar is bugged on linux). You need to use the pawnonly frenametextfile and fcopytextfile from dutils for that.
Toggle Map-Icon Visibility for a Player
If you want to hide a specific player on the map, you can set the alpha value to 0x00. If you want to make him visible again, you just have to set it to 0xFF.
Since this is not always simple, to store the current color of the player in a invisible and a visible way, you can use bitwise or to do that task for you.
This is my togglePlayerMapIconVisibility function, which keeps the color of the player and toggles the player to visible or invisible on the map.
2
3
SetPlayerColor(playerid, (GetPlayerColor(playerid) | 0xFF) - (visible ? 0x00 : 0xFF));
}
Could not complete the operation due to error 80020101
This happend to me when I tried to load ajax-content in internet explorer (worked fine in Firefox, etc), which had a script-tag without a valid comments tag.
So just for the record, here is the solution, which helped me.
Before (Broken):
2
3
4
5
<!--
alert('text');
// -->
</script>
Fixed (Working)
2
3
4
5
// <!--
alert('text');
// -->
</script>
Add Google Analytics (Tracking) to Redmine
Today I added some google analytics tracking to my redmine at dev.webdevberlin.com.
This was pretty easy, open:
Search for the </body>-tag and add the given code (from analytics page) before the tag.
You don't even need to restart your redmine.
Should work pretty much the same for all other tracking services!


