enabled = $params[$this->option];
$fapp = ($params['xs_compress']==1) ? '.gz' : '';
$this->smfile = preg_replace('#[^\\/]+?\.xml$#', $params[$this->foption], $params['xs_smname']).$fapp;
$this->smurl = preg_replace('#[^\\/]+?\.xml$#', $params[$this->foption], $params['xs_smurl']).$fapp;
}
function check_perms()
{
if(
$this->enabled &&
!is_writable($this->smfile) && !is_writable(dirname($this->smfile))
)
return '
Sitemap file is not writable: '.$this->smfile.'';
}
function fn_start($params, $fop, $parser)
{
global $is_dom2;
if(!$this->enabled) return;
$this->fop = $fop;
$this->params = $params;
$this->parser = $parser;
$bcont = implode('', file(CTYPEDIR.'sitemap_mob_tpl.xml'));
preg_match('#^(.*)%URLS_LIST_FROM%(.*)%URLS_LIST_TO%(.*)$#is', $bcont, $this->tpl);
$this->tpl[1] = str_replace('%GEN_URL%', $is_dom2.'/', $this->tpl[1]);
$this->pf = $this->fop['fopen']($this->smfile.$this->fapp, 'w');
$rc = str_replace('%INIT_URL%', $params['xs_initurl'], $this->tpl[1]);
$this->fop['fwrite']($this->pf, $rc);
}
function fn_proc($url_repl)
{
if(!$this->enabled) return;
if($this->params['xs_mobileincmask'])
if(!preg_match('#'.str_replace(' ', '|', preg_quote($this->params['xs_mobileincmask'],'#')).'#',$url_repl['URL']))
return;
if($this->wr_urls>=50000)return;
$this->wr_urls++;
$this->fop['fwrite']($this->pf, $this->parser->parseContVar($this->tpl[2], $url_repl));
}
function fn_finish()
{
if(!$this->enabled) return;
$this->fop['fwrite']($this->pf, $this->tpl[3]);
$this->fop['fclose']($this->pf);
}
}
global $sm_proc_list, $grab_parameters;
$sm_proc_list[] = new SG_Mobile($grab_parameters);
?>