MyBB Community Forums

Full Version: IPB 3.2 -> MyBB 1.6.4 Merge Error (Forum Permissions)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
[Image: 99d555787b30847d76ffb8e57bc9721a.png]

Forums are showing in the MyBB database:

[Image: b97d6a800180bc25184782aa4435d23f.png]

But not in the Admin CP:

[Image: 50b163d07a8739bfa9aedf3e4e710c6b.png]

Edit to Add: I changed "Hide Private Forums" to No, and they now appear on the board index, but they still do not show up in the Admin CP. Also, no posts or topics are listed within the forums, and when I try to enter one of these private forums, it shows an "Invalid Forum" error message.

Seems I have a lot of posts that require mod approval:

[Image: dd05882310a9f3516a9765153586de74.png]

But those posts were not queued on IPB.

Edit again: It seems the missing forums mysteriously appeared, fully populated, after approving all the posts/threads. This does not seem very intuitive without some documentation at the end of the merge process to direct the new MyBB admin to do all this.

Speaking of posts, BBCode isn't converted:

[Image: 8645f9f5dcd7b91d92bc4ed787660773.png]

[Image: 22fc422ff2a846dc25786d61d82dcbb8.png]

We should have:

Super Moderators: 3
Administrators: 1 (although I have a few admins with access via secondary group, the count is off either way)
Moderators: 0 (forum moderators are not moved from their group, they are given mod permissions on a user basis)

Stats are off, too:

[Image: dba2d9cd530f5933bcec96ead0b6398c.png]

Edit: Recounting & rebuilding fixed this.


Aside from that, the script ran pretty well...

[Image: 23edc5752ca81f796225572ed3551b17.png]

[Image: 2f65e8e22c566d392c327f77973053a8.png]
permissions_array is in the IPB3 database, not in MyBB... and has nothing to do with forums. Your forums aren't showing because you haven't run the Recount & Rebuild tools in MyBB's ACP yet.

I'm not sure why its not finding it, unless it was removed in 3.2 (My test database is 3.1)

I'll look into it more later, but if you could please check your IPB3.2 database for that field on the forums table.
(2011-10-13, 11:35 AM)Dylan M. Wrote: [ -> ]permissions_array is in the IPB3 database, not in MyBB... and has nothing to do with forums. Your forums aren't showing because you haven't run the Recount & Rebuild tools in MyBB's ACP yet.

I'm not sure why its not finding it, unless it was removed in 3.2 (My test database is 3.1)

I'll look into it more later, but if you could please check your IPB3.2 database for that field on the forums table.

Indeed, permissions_array is not in the forums table. Attached is a zip file containing the structure of the table.

[attachment=24425]

permission_index may be of interest, here is the structure for that table...

[attachment=24426]
Unfortunately permission_index isn't it. That exists in my database as well.

Looking at your table structure I cannot see anything that replaces permission_array, which should appear between permission_custom_error and permission_showtopic.

Please PM me with login details for your database and I'll look over the whole thing and see if there is a reason this doesn't appear.
(2011-10-13, 04:27 PM)Dylan M. Wrote: [ -> ]Unfortunately permission_index isn't it. That exists in my database as well.

Looking at your table structure I cannot see anything that replaces permission_array, which should appear between permission_custom_error and permission_showtopic.

Please PM me with login details for your database and I'll look over the whole thing and see if there is a reason this doesn't appear.
I tried to, but I'm not on your buddy list. Here's a consolation prize:

[attachment=24429]

This archive contains the structure of all the tables in ipb 3.2.

By the way, I know all the issues I posted above aren't related to the error in the first attachment, I just posted everything that looked odd or didn't seem right so I could make a tutorial about converting from IPB 3.2 to MyBB for BBResource. In effect, learning about the script to teach others. Smile
Erg, sorry about the buddylist issue. That was a temporary change to stop someone else from sending me PMs w/out needing to ignore them Wink

As for writing the tutorial, be aware that the IPB3 module is still a beta copy and as such some things are known not to work.
As a temporary measure you can try this to get around it...

Add the column to the forums table as a varchar 100 and leave them all NULL Smile
I'll get on that now. Sorry, been a little busy!
This merge went much smoother. The forums, topics, and posts are showing now with no problems (although permissions are a wash, I imagine that's collateral damage).

Converting polls threw an error, if you'd like I can try to get a screenshot of that, but it only lasts a couple seconds before it auto-redirects through to the next screen.
In case you're interested:

[attachment=24439]
(2011-10-14, 06:52 PM)Jay-BBR Wrote: [ -> ]I'll get on that now. Sorry, been a little busy!
This merge went much smoother. The forums, topics, and posts are showing now with no problems (although permissions are a wash, I imagine that's collateral damage).

Converting polls threw an error, if you'd like I can try to get a screenshot of that, but it only lasts a couple seconds before it auto-redirects through to the next screen.
In case you're interested:

I've fixed it at polls.php line 40
	function convert_data($data)
	{
		global $db;
		
		$insert_data = array();
		
		$insert_data['import_tid'] = $data['tid'];
		$insert_data['import_pid'] = $data['pid'];
		$insert_data['tid'] = $this->get_import->tid($data['tid']);
		$choices = unserialize(utf8_decode(stripcslashes($data['choices'])));
		
		foreach($choices as $key => $array)
		{
			$seperator = '';
			$choices1 = '';
			$choice_count = 0;
			foreach($array['choice'] as $key => $choice)
			{
				++$choice_count;
				$choices1 .= $seperator.$db->escape_string($choice);
				$seperator = '||~|~||';
			}
			
			$seperator = '';
			$votes = '';
			foreach($array['votes'] as $key => $vote)
			{
				$votes .= $seperator.$vote;
				$seperator = '||~|~||';
			}
			
			$insert_data['question'] = $array['question'];
			$insert_data['dateline'] = $data['start_date'];
			$insert_data['options'] = $choices1;
			$insert_data['votes'] = $votes;
			$insert_data['numoptions'] = $choice_count;
			$insert_data['numvotes'] = $data['votes'];
			$insert_data['multiple'] = $array['multi'];
		}
		
		return $insert_data;
	}

Nice Snaity!! Big Grin