Loading fresh JS code





ranking Sort Sort   |   date Sort Sort   |   member Sort Sort
Syndication

« Previous 1 2 3 4 5 6 7 8 9  ...  24 25 Next »
6
Date Submitted Fri. Sep. 28th, 2007 2:08 AM
Revision 1
Scripter Fordiman
Tags JavaScript | promise | Prototype
Comments 6 comments
Here's a quick lil' addon for Prototype that I use often.

Prototype.Promise(condition, action, interval)
condition is a string that you want met before an action is run.
action is a function that does the action.
interval is the polling rate for condition in seconds, and defaults to 1

So, for example, you may want function foo to run, but only once bar has been set:

function foo(a,b) {
this.retVal=a+b;
}
var thingy = {
retVal:0
};
Prototype.Promise(
'thingy.retVal=5',
foo.bind(thingy,5,10),
5
);


Then, in some point in the mysterious future, thingy.retVal gets set to 5, at which point, the Promise goes into effect, and thingy.retVal becomes 10.

Where I find this particularly useful is in making sure that a document is loaded before doing something (condition="$$('body').length>=1), as you can see it used for the include functions.

Speaking of which, the following include functions are great for getting scripts and stylesheets into your page. I won't bother with examples, as they're pretty straightforward.

Meanwhile, Prototype.scriptPath will point to wherever in your server's heirarchy Prototype was loaded from. The regex, you'll note allows for names like prototype.compressed.js, prototype.modified.js, 2007-09-28.prototype.js, etc - just in case you want to keep track of your various hacks of Prototype, as I do.
5
Date Submitted Thu. Sep. 27th, 2007 8:02 AM
Revision 1
Scripter Fordiman
Tags JavaScript | PHP | Prototype | serialize
Comments 2 comments
This is the final version of my Javascript serializer targetted at PHP.

The point:
Objects are most easily passed over the network as serialized strings. Between serialization and unserialization, serialization is by far the easier of the two. Since object passing can sometimes be a process-hungry thing, we want to do things as quickly as possible.

My solution is to always do the hard part in compiled code, while doing the easy part in script. That is, whichever way you're passing an Object, you want to pass it in a natively decoded format for the target.

Since I work mostly in PHP, this meant writing a module that would be able to generate a string that can be decoded with PHP's unserialize() function into a PHP Associative Array (or other applicable type).

Notes:
This lib REQUIRES the Prototype lib. You can hack prototype out of it, of course (by replacing the references to Object.extend() with explicit assignments), but I can't imagine why you'd want to bother; it's used mostly with Ajax.Request anyway.

Previous versions of this code would add the .toPHP() member to the Object prototype. After trying to enumerate things, I found that this is a REALLY bad thing to do, as toPHP springs up where it's not wanted in ALL objects. As a result, I've opted to go the Prototype route and apply it as a member of the Object object.

Please note that if you pass a serialized string to PHP via GET or POST, you'll need to stripslashes() before unserialization.



Javascript sample of use:

var myObject = {
name:'value',
test:['Array','of','strings'],
bool:false,
timestamp: new Date(),
float: 3.1415926539,
number: 42,
func: function () {
alert('Member functions are always omitted from serialization');
}
}
alert(Object.toPHP(myObject));

Output:
a:7:{s:4:"name";s:5:"value";s:4:"test";a:3:{i:0;s:5:"Array";i:1;s:2:"of";i:2;s:7:"strings";}s:4:"bool";b:0;s:9:"timestamp";i:1190897619824;s:5:"float";d:3.1415926539;s:6:"number";i:42;s:4:"func";null}


Sample of subsequent unserialization in PHP (passed via POST as 'myobject')

$myObject=unserialize(stripslashes($_POST['myobject']));
var_dump($myObject);

Output:
array(7) {
["name"]=>
string(5) "value"
["test"]=>
array(3) {
[0]=>
string(5) "Array"
[1]=>
string(2) "of"
[2]=>
string(7) "strings"
}
["bool"]=>
bool(false)
["timestamp"]=>
int(1192296601)
["float"]=>
float(3.1415926539)
["number"]=>
int(42)
["func"]=>
NULL
}
3
Date Submitted Tue. Sep. 25th, 2007 10:50 AM
Revision 1
Helper chaos
Tags "form input" | "input focus" | autofocus | JavaScript
Comments 0 comments
This script performs reliable, cross-browser input autofocus that often can be used simply by dropping it in, with no modifications to the form or HTML body. It refuses to switch focus if it detects that the user has interacted with the form (avoiding a major source of annoyance with autofocus scripts) and correctly handles Firefox tabs opened "in the background", which most autofocus scripts fail on. Official home is on the Lost Souls MUD Grimoire.
5
Date Submitted Tue. Sep. 4th, 2007 11:34 PM
Revision 1
Helper explode
Tags excel | mysql | PHP | query
Comments 0 comments
This is a cool function that lets you save MySQL query data to an Excel spreadsheet. This is good for taking a backup or if you want to change a lot of information fast, then re-upload it.

I will use the config.php and class.mysql.php files from MySQL DB Class with Extras, so please look at those also.
5
Date Submitted Tue. Sep. 4th, 2007 11:27 PM
Revision 1
Helper explode
Tags mysql | PHP | query
Comments 2 comments
This is a little function that you can use to print out results of a query. It will dynamicly generate the table for you (like phpMyAdmin). This is a nice little checker that is fast. It beats logging into phpMyAdmin and typing in your query there.

I will use the config.php and class.mysql.php files from MySQL DB Class with Extras, so please look at those also.
5
Date Submitted Tue. Sep. 4th, 2007 11:13 PM
Revision 1
Helper explode
Tags "credit card" | authorize.net | Class | PHP
Comments 0 comments
This is an authorize.net credit card processing class. Required elements are:
- Authorize.net account (live and/or sandbox)
- PHP w/ CURL installed
- SSL certificate installed on server
- My Simple Error Class

And use my Easy Credit Card Class as a pre-processor to this class.

For more information on authorize.net just go to their website and download their developers information.
5
Date Submitted Tue. Sep. 4th, 2007 10:24 PM
Revision 1
Helper explode
Tags Email | PHP | regex | Validate
Comments 1 comments
This is a simple function to check if an email is valid or not.
1
Date Submitted Tue. Sep. 4th, 2007 7:28 PM
Revision 1
Helper explode
Tags PHP | Random
Comments 1 comments
This little function does great for passwords, usernames, files, and anything else you need a random string for.
4
Date Submitted Tue. Sep. 4th, 2007 5:21 PM
Revision 1
Helper explode
Tags "credit card" | Class | PHP
Comments 0 comments
This is a simple credit card validation class that you can check for most issues before you process you form through paypal, authorize.net, or anywhere else. This also uses my Simple Error Class, the error class is required for this.
5
Date Submitted Tue. Sep. 4th, 2007 4:51 PM
Revision 1
Helper explode
Tags Class | error | PHP
Comments 1 comments
A very simple error class that can be pretty handy.
« Previous 1 2 3 4 5 6 7 8 9  ...  24 25 Next »