So we have had people around here asking, begging, stealing, thwarting and offering to sell their sister's children to get an upgrade script from Boonex to go from Beta to Beta. After all, it's being said how much of a pain it is to install the D7 Beta, get it up, get people to use it and then tear it down and do it again. So, I figure to set aside my position as the Ultimate Resident A-Hole that everyone LOVES so much and to instead put my money where my mouth is when I tell people that it's just not happening.
So, we took the script and spent several hours looking at all of it. Okay, not all of it because we aren't done with it. But I figure it's time to give you guys a peak into what needs to be done to upgrade between Beta's and so on. Now keep in mind, in order for us to get this far we have had to sit and look at each and every stinking file in D7 B7 & B8, open them up and compare them. Granted, we're using Notepad++ to do this comparison, but it's far from being a simple procedure, there is a massive amount of files buried multiple directories deep. So far we have made it to modules/boones/groups... Here is what we have so far as a recommended upgrade path.
*****NOTE: THIS IS NOT A FULL UPGRADE PATH YET AND IT SHOULD NOT BE DEPENDED UPON AS 1. IF YOU RUN THIS YOU WILL GET ERRORS AS WE HAVE NOT FINISHED THE WORK ON IT AND IT IS RATHER SIMPLY AN EXAMPLE OF THE AMOUNT OF WORK THAT WOULD NEED TO BE DONE TO BRING D7 B7 INTO D7 B8 REALM. HERE IT IS SO FAR!!:
******************************************
You would have to first run the following SQL via phpMyAdmin to bring your DB into line:
INSERT INTO `sys_options` VALUES('sys_html_fields', 'a:1:{s:6:"system";a:18:{i:0;s:20:"POST.DescriptionMe.0";i:1;s:23:"REQUEST.DescriptionMe.0";i:2;s:20:
"POST.DescriptionMe.1";i:3;s:23:"REQUEST.DescriptionMe.1";i:4;s:12:
"POST.message";i:5;s:15:"REQUEST.message";i:6;s:9:"POST.body";i:7;s:12:
"REQUEST.body";i:8;s:9:"POST.Text";i:9;s:12:"REQUEST.Text";i:10;s:12:
"POST.Content";i:11;s:15:"REQUEST.Content";i:12;s:17:
"POST.content_text";i:13;s:20:"REQUEST.content_text";i:14;s:12:
"POST.content";i:15;s:15:"REQUEST.content";i:16;s:12:
"POST.CmtText";i:17;s:15:"REQUEST.CmtText";}}', 0, 'HTML fields', 'text', '', '', 0, '');
--The above is all 1 query, I had to enter hard returns at each line to get it to fit on here. It's a long one.
ALTER TABLE `sys_options` VALUES('sys_ps_enabled_group_6', '', 9, 'Enable
\'Faves\' group', 'checkbox', '', '', 11, '');
ALTER TABLE `sys_options` VALUES('sys_ps_enabled_group_7', '', 9, 'Enable
\'Contacts\' group', 'checkbox', '', '', 13, '');
ALTER TABLE `sys_page_compose` VALUES(146, 'search', '998px', 'Search
Form', '_Search profiles', 2, 0, 'SearchForm', '', 0, 34, 'non,memb', 0);
INSERT INTO `sys_profile_fields` VALUES (68, 'allow_view_to', 'system', 'select',
'', NULL, NULL, '', 'LKey', '', 0, '', 0, 1, 0, 0, NULL, 17, 8, 0, NULL, 0, NULL, 0, NULL,
0, NULL, 0, NULL, 0, NULL, '', 0, NULL, 0, NULL, 0, NULL, 0, 0);
ALTER TABLE `Profiles` (
`ID` int(10) unsigned NOT NULL auto_increment,
`NickName` varchar(255) NOT NULL default '',
`Email` varchar(255) NOT NULL default '',
`Password` varchar(40) NOT NULL default '',
`Salt` varchar(10) NOT NULL default '',
`Status` enum('Unconfirmed','Approval','Active','Rejected','Suspended') NOT
NULL default 'Unconfirmed',
`Role` tinyint(4) unsigned NOT NULL default '1',
`Couple` int(10) unsigned NOT NULL default '0',
`Sex` varchar(255) NOT NULL default '',
`LookingFor` set('male','female') NOT NULL default '',
`Headline` varchar(255) NOT NULL,
`DescriptionMe` text NOT NULL,
`Country` varchar(255) NOT NULL default '',
`City` varchar(255) NOT NULL,
`DateOfBirth` date NOT NULL,
`Featured` tinyint(1) NOT NULL default '0',
`DateReg` datetime NOT NULL default '0000-00-00 00:00:00',
`DateLastEdit` datetime NOT NULL default '0000-00-00 00:00:00',
`DateLastLogin` datetime NOT NULL default '0000-00-00 00:00:00',
`DateLastNav` datetime NOT NULL default '0000-00-00 00:00:00',
`aff_num` int(10) unsigned NOT NULL default '0',
`Tags` varchar(255) NOT NULL default '',
`zip` varchar(255) NOT NULL,
`EmailNotify` tinyint(1) NOT NULL default '1',
`LangID` int(11) NOT NULL,
`UpdateMatch` tinyint(1) NOT NULL default '1',
`Views` int(11) NOT NULL,
`Rate` float NOT NULL,
`RateCount` int(11) NOT NULL,
`CommentsCount` int(11) NOT NULL,
`PrivacyDefaultGroup` int(11) NOT NULL default '3',
`allow_view_to` int(11) NOT NULL default '3',
`UserStatus` varchar(64) NOT NULL default 'online',
`UserStatusMessage` varchar(255) NOT NULL default '',
`UserStatusMessageWhen` int(10) NOT NULL,
`Avatar` int(10) unsigned NOT NULL,
`Height` varchar(255) NOT NULL,
`Weight` varchar(255) NOT NULL,
`Income` varchar(255) NOT NULL,
`Occupation` varchar(255) NOT NULL,
`Religion` varchar(255) NOT NULL,
`Education` varchar(255) NOT NULL,
`RelationshipStatus` enum('Single','In a Relationship','Engaged','Married','It''s
Complicated','In an Open Relationship') default NULL,
`Hobbies` text NOT NULL,
`Interests` text NOT NULL,
`Ethnicity` varchar(255) NOT NULL,
`FavoriteSites` text NOT NULL,
`FavoriteMusic` text NOT NULL,
`FavoriteFilms` text NOT NULL,
`FavoriteBooks` text NOT NULL,
`FirstName` varchar(255) NOT NULL,
`LastName` varchar(255) NOT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `NickName` (`NickName`),
KEY `Country` (`Country`),
KEY `DateOfBirth` (`DateOfBirth`),
KEY `DateReg` (`DateReg`),
KEY `DateLastNav` (`DateLastNav`),
FULLTEXT KEY `NickName_2` (`NickName`,`City`,`Headline`,`DescriptionMe`,`Tags`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
ALTER TABLE `[db_prefix]transfers` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`module` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`status` enum('not_started','started','finished','error') COLLATE utf8_unicode_ci
NOT NULL,
`status_text` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
******************************************
Replace in your Dolphin Root Directory the following files:
browse.php
calendar.php
categories.php
contact.php
forgot.php
index.php
join.php
list_pop.php
mail.php
member.php
member_privacy.php
profile.php
result.php
rss_factory.php
search.php
searchKeyword.php
tags.php
viewPage.php
admin/db.php
admin/index.php
admin/templates/base/pbuilder_cpanel.html
flash/index.php
flash/XML.php
flash/modules/board/inc/actions.inc.php
flash/modules/chat/inc/actions.inc.php
flash/modules/desktop/inc/actions.inc.php
flash/modules/desktop/inc/customFunctions.inc.php
flash/modules/global/app/admin.swf
flash/modules/global/inc/actions.inc.php
flash/modules/global/inc/constants.inc.php
flash/modules/global/inc/content.inc.php
flash/modules/global/inc/functions.inc.php
flash/modules/global/inc/header.inc.php
flash/modules/im/inc/actions.inc.php
flash/modules/mp3/files/get_file.php
flash/modules/mp3/files/image.php
flash/modules/mp3/files/index.php
flash/modules/mp3/inc/actions.inc.php
flash/modules/mp3/inc/classes/BxDolCronMp3.php
flash/modules/photo/inc/actions.inc.php
flash/modules/video/files/get_download.php
flash/modules/video/files/get_file.php
flash/modules/video/files/get_mobile.php
flash/modules/video/files/index.php
flash/modules/video/inc/actions.inc.php
flash/modules/video/inc/functions.inc.php
flash/modules/video/inc/classes/BxDolCronVideo.php
flash/modules/video_comments/files/get_download.php
flash/modules/video_comments/files/get_file.php
flash/modules/video_comments/files/get_mobile.php
flash/modules/video_comments/files/index.php
flash/modules/video_comments/inc/actions.inc.php
inc/admin.inc.php
inc/admin_design.inc.php
inc/banners.inc.php
inc/design.inc.php
inc/match.inc.php
inc/params.inc.php
inc/profiles.inc.php
inc/security.inc.php
inc/utils.inc.php
inc/classes/BxDolAdminIpBlockList.php
inc/classes/BxDolAdminSettings.php
inc/classes/BxDolAdminTools.php
inc/classes/BxDolAlbums.php
inc/classes/BxDolAlertsResponceMatch.php
inc/classes/BxDolBrowse.php
inc/classes/BxDolCmts.php
inc/classes/BxDolCmtsQuery.php
inc/classes/BxDb.php
inc/classes/BxDolDefUploader.php
inc/classes/BxDolfilesDb.php
inc/classes/BxDolFilesModule.php
inc/classes/BxDolTemplate.php
inc/classes/BxDolfilesUploader.php
inc/classes/BxDolForm.php
inc/classes/BxDolInstaller.php
inc/classes/BxDolMailBox.php
inc/classes/BxDolPageViewAdmin.php
inc/classes/BxDolPrivacyQuery.php
inc/classes/BxDolPrivacySearch.php
inc/classes/BxDolProfileFields.php
inc/classes/BxDolProfileQuery.php
inc/classes/BxDolProfilesController.php
inc/classes/BxDolSearch.php
inc/classes/BxDolSubscriptionQuery.php
inc/classes/BxDolTags.php
inc/classes/BxDolTemplate.php
inc/classes/BxDolTemplate/Admin.php
inc/classes/BxDolTwigModule.php
inc/classes/BxDolTwigModuleDb.php
inc/classes/BxDolTwigTemplate.php
inc/js/function.js
inc/js/classes/BxDolCmts.js
modules/index.php
modules/boonex/ads/classifieds.php
modules/boonex/ads/classifieds_tags.php
modules/boonex/ads/post_mod_ads.php
modules/boonex/ads/classes/BxAdsModule.php
modules/boonex/articles/admin.php
modules/boonex/articles/archive.php
modules/boonex/articles/category.php
modules/boonex/articles/tag.php
modules/boonex/articles/view.php
modules/boonex/avatars/classes/BxAvaModule.php
modules/boonex/blogs/blogs.php
modules/boonex/blogs/classes/BxBlogsModule.php
modules/boonex/blogs/classes/BxBlogsSearchUnit.php
modules/boonex/blogs/templates/base/css/blogs.css
modules/boonex/custom_rss/classes/BxCRSSModule.php
modules/boonex/google_search/templates/base/search.html
Delete the following files:
modules/boonex/ads/index.php
***Please uninstall the following modules via your admin panel:
Data Migration, Events, Feedback, Files, Forums, Groups
After you uninstall the above modules please upload & replace the following files:
modules/boonex/events/upload the entire folder and all sub-folders
modules/boonex/feedback/upload the entire folder and all sub-folders
modules/boonex/files/upload the entire folder and all sub-folders
modules/boonex/forum/upload the entire folder and all sub-folders
modules/boonex/groups/upload the entire folder and all sub-folders
modules/boonex/data_migration/upload the entire folder and all sub-folders
Re-install the Data Migration, Events, Feedback, Files, Forums and Groups Modules via your Admin Panel
**************************
I really hope that people are starting to see the massive amount of work that goes into just creating an upgrade script. This has been worked on for 3 days now and there is just no way we can sit down and do it all in a few hours effectively. We quickly dumped the idea of just editing the effected files as that would be an even more monstrous task than to just note for you which ones to replace. Even if 2 files have the same exact byte count we have had to go through them to ensure even something as simple as a : changed to a ; is found.
We'll keep working on this, mainly because we like to finish what we start, but we will never promise you that any upgrade script we produce will work seamlessly, there are to many variables such as types of servers out there for us to possibly anticipate and deal with them all.
Anyone who wants to pick up where we have left off on this so far, feel free to do so and we'll even be happy to colloborate with you on it to see how well this can be done, if at all.
I'm sure he'll release an upgrade-script to upgrade his upgrade-script so you don't have to re-do all those queries and file replacements....
Dude, I really think we ought to organize a party for when you upgrade to RC1....
PS I really miss not having some emoticons here.
I would do that just yet. Unless I read this wrong, this is only for the "Groups" module.
modules/boonex/groups/
What that means is we started with the main dolphin root directory (including all the files) then went into root/admin/all the folders & files
and so on... So far we've made it to the root/modules/boonex/groups
We're taking it literally from the top in alphabetical order and coming down the list (of course the root files we're the first) if you look at how it's done so far you will see the order it's going in. Basically, we're see more
So when will this be finished..I NEED A DATE DAMNIT !! Sorry, had to do it.
Please be aware though, if you use a third-party upgrade script/procedure for upgrading a beta, or from beta to RC, all your future bug reports will be under suspicion. Those who do this should keep a separate clean see more
@Zarcon - thank you for the information and being helpful even though we have respectfully disagreed on recent posts.
@CodeSatory - I like your approach better - I think that is how wordpress works - a script that just updates the database, and then you overwrite all the files. I've tried this with even see more
Chris