public function deleteTemplatesInStyle($styleId) { $db = $this->_getDb(); $titles = $db->fetchPairs(' SELECT template_id, title FROM xf_template WHERE style_id = ? ', $styleId); if (!$titles) { return; } $templateIds = array_keys($titles); $this->_deleteTemplates($templateIds); $db->query(' DELETE FROM xf_template_compiled WHERE style_id = ? AND title IN (' . $db->quote($titles) . ') ', $styleId); if (XenForo_Application::get('options')->templateFiles) { XenForo_Template_FileHandler::delete($titles, $styleId, null); } XenForo_Template_Compiler::resetTemplateCache(); }
public function deleteTemplatesInStyle($styleId) { $db = $this->_getDb(); $db->query(' DELETE FROM xf_template_include WHERE source_map_id IN ( SELECT template_map_id FROM xf_template AS template INNER JOIN xf_template_map AS template_map ON (template.template_id = template_map.template_id) WHERE template.style_id = ? ) ', $styleId); $db->query(' DELETE FROM xf_template_phrase WHERE template_map_id IN ( SELECT template_map_id FROM xf_template AS template INNER JOIN xf_template_map AS template_map ON (template.template_id = template_map.template_id) WHERE template.style_id = ? ) ', $styleId); $db->query(' DELETE FROM xf_template_map WHERE template_id IN ( SELECT template_id FROM xf_template WHERE style_id = ? ) ', $styleId); $db->query(' DELETE FROM xf_template_compiled WHERE style_id = 0 AND title IN ( SELECT title FROM xf_template WHERE style_id = ? ) ', $styleId); $db->delete('xf_template', 'style_id = ' . $db->quote($styleId)); XenForo_Template_Compiler::resetTemplateCache(); }