This is a comment on Action: GetIP, posted by WikiAdmin at 22.05.2022 07:08
View source for This was added only as a snippet
I added the ##main## definition declaration to the example above, so it will work out of the box. You probably want wrap it in ##$this->get_user()## condition so it won't be cached. %%(php) <?php if ($this->get_user()) { $dot = strripos($ip, '.'); $tpl->ip = substr($ip, 0, $dot) . '.*'; } %% Or disable the page cache for guests, which is a rather less good option, it is used primarily for Captcha and form tokens. %%(php) <?php // disable server cache for page $this->http->no_cache(false); %% The ##get_user_ip()## function itself already contains a simple anonymize feature if the config setting ##anonymize_ip## is enabled. %%(php) <?php function get_user_ip() { if ($this->db->anonymize_ip) { return '0.0.0.0'; } else { return $this->http->ip; } } %%