# rvm_counter v0.1 # Auto-incrementing counter(s) # # License: GNU GPLv2 or later # # Ruud van Melick # http://vanmelick.com/ # ...................................................................... # This is a plugin for Textpattern - http://textpattern.com/ # To install: textpattern > admin > plugins # Paste the following text into the 'Install plugin' box: # ...................................................................... YTo5OntzOjc6InZlcnNpb24iO3M6MzoiMC4xIjtzOjY6ImF1dGhvciI7czoxNToiUnV1ZCB2 YW4gTWVsaWNrIjtzOjEwOiJhdXRob3JfdXJpIjtzOjIxOiJodHRwOi8vdmFubWVsaWNrLmNv bS8iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjI4OiJBdXRvLWluY3JlbWVudGluZyBjb3VudGVy KHMpIjtzOjQ6InR5cGUiO2k6MDtzOjQ6Im5hbWUiO3M6MTE6InJ2bV9jb3VudGVyIjtzOjQ6 ImhlbHAiO3M6Mjc3NDoiIDxzdHlsZT4KICAgbGkgY29kZSB7Zm9udC13ZWlnaHQ6IGJvbGQ7 fQogICBwcmUge3BhZGRpbmc6IDAuNWVtIDFlbTsgYmFja2dyb3VuZDogI2VlZTsgYm9yZGVy OiAxcHggZGFzaGVkICNjY2M7fQogICBoMSwgaDIsIGgzLCBoMyBjb2RlIHtmb250LWZhbWls eTogc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IGJvbGQ7fQogICBoMSwgaDIsIGgzIHttYXJn aW4tbGVmdDogLTFlbTt9CiAgIGgyLCBoMyB7bWFyZ2luLXRvcDogMmVtO30KICAgaDEge2Zv bnQtc2l6ZTogM2VtO30KICAgaDIge2ZvbnQtc2l6ZTogMmVtO30KICAgaDMge2ZvbnQtc2l6 ZTogMS41ZW07fQogICBsaSBhIGNvZGUge2ZvbnQtd2VpZ2h0OiBub3JtYWw7fQogICAucmVx dWlyZWQsIC53YXJuaW5nIHtjb2xvcjpyZWQ7fQogPC9zdHlsZT4KCgk8aDE+cnZtX2NvdW50 ZXI8L2gxPgoKCTxwPlRoaXMgcGx1Z2luIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgdGFnKHMp OgoJPHVsPgoJCTxsaT48YSBocmVmPSIjcnZtX2NvdW50ZXIiPiA8Y29kZT4mbHQ7dHhwOnJ2 bV9jb3VudGVyIC8mZ3Q7PC9jb2RlPiA8L2E+PC9saT4KCTwvdWw+PC9wPgoKCTxoMyBpZD0i cnZtX2NvdW50ZXIiPjxjb2RlPiZsdDt0eHA6cnZtX2NvdW50ZXIgLyZndDs8L2NvZGU+PC9o Mz4KCgk8cD5SZXR1cm5zIGEgbnVtYmVyIHRoYXQgaXMgaW5jcmVtZW50ZWQgZWFjaCB0aW1l IHRoaXMgdGFnIGlzIGNhbGxlZC4gQ291bnRlciB2YWx1ZXMgYXJlIHN0b3JlZCBpbiB0aGUg dHhwX2Rpc2N1c3Nfbm9uY2UgdGFibGUgd2l0aG91dCBjb25mbGljdGluZyB3aXRoIGNvbW1l bnQgbm9uY2VzLjwvcD4KCgk8aDQ+QXR0cmlidXRlczwvaDQ+CgoJPHVsPgoJCTxsaT48Y29k ZT5uYW1lPSZxdW90O3RleHQmcXVvdDs8L2NvZGU+IDxiciAvPgpFeHBsaWNpdCBuYW1lICht YXggMjAgY2hhcnMpIGZvciB0aGlzIGNvdW50ZXIgdG8gZGlmZmVyZW50aWF0ZSBpdCBmcm9t IGFub3RoZXIgY291bnRlci4gRGVmYXVsdCBpcyBhbiBlbXB0eSBzdHJpbmcuPC9saT4KCQk8 bGk+PGNvZGU+b2Zmc2V0PSZxdW90O2ludGVnZXImcXVvdDs8L2NvZGU+IDxiciAvPgpQb3Np dGl2ZSBvciBuZWdhdGl2ZSBvZmZzZXQgZm9yIHRoZSBjb3VudGVyLiBUaGlzIGlzIGFkZGVk IHRvIHRoZSBhY3R1YWwgY291bnRlciB2YWx1ZSBiZWZvcmUgcmV0dXJuaW5nIGl0LiBEZWZh dWx0IGlzIDAuPC9saT4KCQk8bGk+PGNvZGU+cmVzZXQ9JnF1b3Q7aW50ZWdlciZxdW90Ozwv Y29kZT4gPGJyIC8+ClJlc2V0IHRoZSBjb3VudGVyIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWUg dXBvbiB0aGUgbmV4dCBjYWxsIG9mIHRoaXMgY291bnRlciB0YWcuIEluIG1vc3QgY2FzZXMg dXNpbmcgdGhlICYjODIxNjtvZmZzZXQmIzgyMTc7IGF0dHJpYnV0ZSBpcyBlYXNpZXIuPC9s aT4KCQk8bGk+PGNvZGU+c3RlcD0mcXVvdDtpbnRlZ2VyJnF1b3Q7PC9jb2RlPiA8YnIgLz4K UG9zaXRpdmUgb3IgbmVnYXRpdmUgY291bnRlciBzdGVwIHNpemUuIERlZmF1bHQgaXMgc2V0 IHRvICYjODIxNjsxJiM4MjE3OywgbWVhbmluZyB0aGUgY291bnRlciBpcyBpbmNyZWFzZWQg YnkgMSBlYWNoIHRpbWUgaXQgaXMgY2FsbGVkLjwvbGk+CgkJPGxpPjxjb2RlPndpZHRoPSZx dW90O2ludGVnZXImcXVvdDs8L2NvZGU+IDxiciAvPgpNaW5pbXVtIHdpZHRoIG9mIHRoZSBj b3VudGVyIHdoZW4gZGlzcGxheWVkLiBTbWFsbCBjb3VudGVyIHZhbHVlcyBhcmUgemVyby1w YWRkZWQgKGxlZnQgc2lkZSkgdG8gcmVhY2ggdGhlIHNwZWNpZmllZCBtaW5pbXVtIHdpZHRo LiBEZWZhdWx0IGlzIHVuc2V0LjwvbGk+Cgk8L3VsPgoKCTxoND5FeGFtcGxlczwvaDQ+CgoJ PHA+RGVmYXVsdCwgbmFtZWxlc3MgY291bnRlcjo8L3A+Cgo8cHJlPjxjb2RlPiZsdDt0eHA6 cnZtX2NvdW50ZXIgLyZndDsKPC9jb2RlPjwvcHJlPgoKCTxwPkEgY291bnRlciBuYW1lZCAm IzgyMTY7ZXhhbXBsZSYjODIxNzs6PC9wPgoKPHByZT48Y29kZT4mbHQ7dHhwOnJ2bV9jb3Vu dGVyIG5hbWU9JnF1b3Q7ZXhhbXBsZSZxdW90OyAvJmd0Owo8L2NvZGU+PC9wcmU+CgoJPHA+ UmVzZXQgdGhlICYjODIxNjtleGFtcGxlJiM4MjE3OyBjb3VudGVyIHRvIDEwLiBOb3RlIHRo YXQgeW91IGhhdmUgdG8gcmVtb3ZlIHRoZSByZXNldCBhdHRyaWJ1dGUgYWZ0ZXIgdGhlIGNv dW50ZXIgaXMgcmVzZXQ6PC9wPgoKPHByZT48Y29kZT4mbHQ7dHhwOnJ2bV9jb3VudGVyIG5h bWU9JnF1b3Q7ZXhhbXBsZSZxdW90OyByZXNldD0mcXVvdDsxMCZxdW90OyAvJmd0Owo8L2Nv ZGU+PC9wcmU+CgoJPHA+VXNlIGFuIG9mZnNldCBvZiAtMTAuIFN1cHBvc2UgdGhlIGNvdW50 ZXIgaXMgY3VycmVudGx5IGF0IDI1LCB0aGVuIGl0IHdvdWxkIGRpc3BsYXkgMTU6PC9wPgoK PHByZT48Y29kZT4mbHQ7dHhwOnJ2bV9jb3VudGVyIG9mZnNldD0mcXVvdDstMTAmcXVvdDsg LyZndDsKPC9jb2RlPjwvcHJlPgoKCTxwPkFkZCBsZWZ0IHNpZGUgemVyby1wYWRkaW5nIHRv IG1ha2UgdGhlIGNvdW50ZXIgdmFsdWUgNSBkaWdpdHMgd2lkZS4gSWYgdGhlIGNvdW50ZXIg aXMgc2V0IHRvIDI1LCB0aGlzIHdvdWxkIGRpc3BsYXkgMDAwMjU6PC9wPgoKPHByZT48Y29k ZT4mbHQ7dHhwOnJ2bV9jb3VudGVyIHdpZHRoPSZxdW90OzUmcXVvdDsgLyZndDsKPC9jb2Rl PjwvcHJlPgoKCTxwPkRpc3BsYXkgdGhlIGN1cnJlbnQgY291bnRlciB2YWx1ZSwgd2l0aG91 dCBjaGFuZ2luZyBpdDo8L3A+Cgo8cHJlPjxjb2RlPiZsdDt0eHA6cnZtX2NvdW50ZXIgc3Rl cD0mcXVvdDswJnF1b3Q7IC8mZ3Q7CjwvY29kZT48L3ByZT4iO3M6NDoiY29kZSI7czo3NTc6 IgpmdW5jdGlvbiBydm1fY291bnRlcigkYXR0cykKewogIGV4dHJhY3QobEF0dHMoYXJyYXko CiAgICAnbmFtZScgICA9PiAnJywKICAgICdvZmZzZXQnID0+ICcwJywKICAgICdyZXNldCcg ID0+ICcnLAogICAgJ3N0ZXAnICAgPT4gJzEnLAogICAgJ3dpZHRoJyAgPT4gJzEnCiAgKSwg JGF0dHMpKTsKCiAgJG5hbWUgID0gZG9TbGFzaChzdWJzdHIoJ3J2bV9jb3VudGVyXycuJG5h bWUsIDAsIDMyKSk7CiAgJGNvdW50ID0gc2FmZV9maWVsZCgnc2VjcmV0JywgJ3R4cF9kaXNj dXNzX25vbmNlJywgIm5vbmNlID0gJyIuJG5hbWUuIiciKTsKCiAgaWYgKCRjb3VudCA9PT0g RkFMU0UpCiAgewogICAgJGNvdW50ID0gKCRyZXNldCAhPT0gJycpID8gaW50dmFsKCRyZXNl dCkgOiBpbnR2YWwoJHN0ZXApOwogICAgc2FmZV9pbnNlcnQoJ3R4cF9kaXNjdXNzX25vbmNl JywgIm5vbmNlID0gJyIuJG5hbWUuIicsIGlzc3VlX3RpbWUgPSAnOTk5OS0xMi0zMScsIHNl Y3JldCA9ICciLiRjb3VudC4iJyIpOwogIH0KICBlbHNlCiAgewogICAgJGNvdW50ID0gKCRy ZXNldCAhPT0gJycpID8gaW50dmFsKCRyZXNldCkgOiAkY291bnQgKyBpbnR2YWwoJHN0ZXAp OwogICAgc2FmZV91cGRhdGUoJ3R4cF9kaXNjdXNzX25vbmNlJywgInNlY3JldCA9ICciLiRj b3VudC4iJyIsICJub25jZSA9ICciLiRuYW1lLiInIik7CiAgfQoKICByZXR1cm4gc3ByaW50 ZignJTAnLmludHZhbCgkd2lkdGgpLidkJywgJGNvdW50ICsgaW50dmFsKCRvZmZzZXQpKTsK fQoiO3M6MzoibWQ1IjtzOjMyOiJkYzkwODNkZmIxMWI1ZDQyZDgzNTAwNTBmYzY3NjRmMyI7 fQ==