Lookin' at vbdate() function source, I found out how to parametrize the admin's offset behind the server:
simply, the users of this hack - with your bugfix - should replace the code
PHP Code:
$datzeit=mktime(substr($datzeit,11,2), substr($datzeit,14,2), 0, substr($datzeit,3,2), substr($datzeit,0,2), substr($datzeit,6,4));
$datzeit=$datzeit+4*3600;
PHP Code:
$datzeit=mktime(substr($datzeit,11,2), substr($datzeit,14,2), 0, substr($datzeit,3,2), substr($datzeit,0,2), substr($datzeit,6,4));
$offset=3600*($bbuserinfo['timezoneoffset']-$timeoffset); // Seconds offset behind the server/post time
$datzeit=$datzeit-$offset; // Traslated new post time
That upgrade reverses, just before saving it, the traslation made at reading time from the post(server) time to the user time. Actually it acts as vbdate() with an inverse traslation.
This way there shouldn't be neither the import of global variables $bbuserinfo and $timeoffset, like functions.php has, as at the top of editpost.php there's a full global variables import.
That is !!
Bye
:stoned: