Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Solved: 10 Years, 4 Months, 1 Week ago Having problem with deactivate plugin !
#1
Solved: 10 Years, 4 Months, 1 Week ago
Hello,

When i deactivate my plugin they give me this error code :
Fatal error: Cannot redeclare find_replace_templatesets() (previously declared in /home/icypopx/public_html/forum/inc/adminfunctions_templates.php:22) in /home/icypopx/public_html/forum/inc/adminfunctions_templates.php on line 101

Please help ._.
#2
Solved: 10 Years, 4 Months, 1 Week ago
which plugin ? give its link ..
#3
Solved: 10 Years, 4 Months, 1 Week ago
(2012-01-17, 03:49 AM)ranjani Wrote: which plugin ? give its link ..

when the op says 'my plugin' does this mean he has written a plugin that fails to deactivate or some else's the link, plugin name and access would be good
Not in this land alone,
But be God's mercies known,
From shore to shore!
Lord make the nations see,
That men should brothers be,
And form one family,
The wide world ov'er

#4
Solved: 10 Years, 4 Months, 1 Week ago
In the plugin file, look in the activate and deactivate function, it should have something like this:

require MYBB_ROOT . "inc/adminfunctions_templates.php";

Change the require to require_once.
#5
Solved: 10 Years, 4 Months, 1 Week ago
well JimR, I might have mistaken though this thread is in general support (neither in development nor in plugin support) ..
@JoshR, if you had written the plugin then please give its code in php tags .. Edit : not seen Yaldaram's response Smile
#6
Solved: 10 Years, 4 Months, 1 Week ago
It's goes same to all my plugin Idk why ._.

#7
Solved: 10 Years, 4 Months, 1 Week ago
Did you change the plugins as I mentioned you earlier ?

(2012-01-17, 04:20 AM)Yaldaram Wrote: In the plugin file, look in the activate and deactivate function, it should have something like this:

require MYBB_ROOT . "inc/adminfunctions_templates.php";

Change the require to require_once.

#8
Solved: 10 Years, 4 Months, 1 Week ago
<?php
/**
 * MyBB 1.6
 * Copyright 2010 MyBB Group, All Rights Reserved
 *
 * Website: http://mybb.com
 * License: http://mybb.com/about/license
 *
 * $Id: adminfunctions_templates.php 5297 2010-12-28 22:01:14Z Tomm $
 */

/**
 * Find and replace a string in a particular template through every template set.
 *
 * @param string The name of the template
 * @param string The regular expression to match in the template
 * @param string The replacement string
 * @param int Set to 1 to automatically create templates which do not exist for that set (based off master) - Defaults to 1
 * @return bolean true if updated one or more templates, false if not.
 */

function find_replace_templatesets($title, $find, $replace, $autocreate=1)
{
	global $db, $mybb;
	
	$return = false;
	
	$template_sets = array(-2, -1);
	
	// Select all global with that title
	$query = $db->simple_select("templates", "tid, template", "title = '".$db->escape_string($title)."' AND sid='-1'");
	while($template = $db->fetch_array($query))
	{
		// Update the template if there is a replacement term or a change
		$new_template = preg_replace($find, $replace, $template['template']);
		if($new_template == $template['template'])
		{
			continue;
		}
		
		// The template is a custom template.  Replace as normal.
		$updated_template = array(
			"template" => $db->escape_string($new_template)
		);
		$db->update_query("templates", $updated_template, "tid='{$template['tid']}'");
	}
	
	// Select all other modified templates with that title
	$query = $db->simple_select("templates", "tid, sid, template", "title = '".$db->escape_string($title)."' AND sid > 0");
	while($template = $db->fetch_array($query))
	{
		// Keep track of which templates sets have a modified version of this template already
		$template_sets[] = $template['sid'];
		
		// Update the template if there is a replacement term or a change
		$new_template = preg_replace($find, $replace, $template['template']);
		if($new_template == $template['template'])
		{
			continue;
		}
		
		// The template is a custom template.  Replace as normal.
		$updated_template = array(
			"template" => $db->escape_string($new_template)
		);
		$db->update_query("templates", $updated_template, "tid='{$template['tid']}'");
		
		$return = true;
	}
	
	// Add any new templates if we need to and are allowed to
	if($autocreate != 0)
	{
		// Select our master template with that title
		$query = $db->simple_select("templates", "title, template", "title='".$db->escape_string($title)."' AND sid='-2'", array('limit' => 1));
		$master_template = $db->fetch_array($query);
		$master_template['new_template'] = preg_replace($find, $replace, $master_template['template']);
		
		if($master_template['new_template'] != $master_template['template'])
		{
			// Update the rest of our template sets that are currently inheriting this template from our master set			
			$query = $db->simple_select("templatesets", "sid", "sid NOT IN (".implode(',', $template_sets).")");
			while($template = $db->fetch_array($query))
			{
				$insert_template = array(
					"title" => $db->escape_string($master_template['title']),
					"template" => $db->escape_string($master_template['new_template']),
					"sid" => $template['sid'],
					"version" => $mybb->version_code,
					"status" => '',
					"dateline" => TIME_NOW
				);
				$db->insert_query("templates", $insert_template);
				
				$return = true;
			}
		}
	}
	
	return $return;
}
?>

This is my admin Function template.
#9
Solved: 10 Years, 4 Months, 1 Week ago
No, its in your plugins. Open each plugin file one by one and look for the "require" (without quotes) and Change it into "require_once" (without quotes)
#10
Solved: 10 Years, 4 Months, 1 Week ago
Okay.
Solved.


Forum Jump:


Users browsing this thread: 1 Guest(s)