# Algorithm Database Discussion

#### Cride5

Hi Dan, it seems that the BOCA database has superseded my implementation. Competition between software products is always good, but I don't really have the time to invest in improving this. If you would like to develop the app I would be happy to send you the source. Sorry I can't be of immediate help.

#### danthecuber

##### Member
Hi Dan, it seems that the BOCA database has superseded my implementation. Competition between software products is always good, but I don't really have the time to invest in improving this. If you would like to develop the app I would be happy to send you the source. Sorry I can't be of immediate help.
Yeah I kinda figured that would be the case. Btw Ryan Reese is a CSS and HTML programmer, would he be able to improve the database?(of course pending how much time he has)

Last edited:

#### aronpm

##### Member
Btw Ryan Reese is a CSS and HTML programmer, would he be able to improve the database?(of course pending how much time he has)
It's funny how you're always going on about FS but you know nothing about programming.

#### danthecuber

##### Member
It's funny how you're always going on about FS but you know nothing about programming.
Dude I do know a few things, I am learning python and BASH right now
Yes I am a programming N00b, but you can't say I know nothing.

Last edited:

#### y235

##### Member
Why not add other puzzles like SQ1, Pyeaminx, Megaminx, etc. ?

#### pjk

Staff member
I'm looking for someone interested to take over on the development of the Algorithm Database that Conrad (Cride5) created. It was last updated in 2010. It has been an excellent resource for many, but without support, it will have to be removed. At the moment it has some issues, most recently images aren't being generated correctly as reported here.

In the coming days I have plans to upgrade the Wiki to the latest Mediawiki version, and this could cause further issues. If anyone is interested in continuing the development to resolve the current issues and future upgrades, please let me know. Otherwise it will be removed from the wiki.

#### Robert-Y

##### Member
I know what can solve the issue but I just don't know how to do it fast. Basically, all of the "%2520" in the URLs need to be removed

#### Artic

##### Member
I really hope the Alg database is not removed. That site has provided me with valuable information and has helped me tremendously. If I weren't so busy I would jump in immediately and help in any way I could.

Is there some way to save it for my own use? If it's going to be removed I definitely want a saved copy for my personal use.

#### mark49152

##### Super Moderator
Staff member
Does this database have anything that algdb.net or BOCA doesn't?

#### cubizh

##### Super Moderator
Staff member
How exactly is the alg database developed? Is the code out there? What are the necessary skills required?

#### pjk

Staff member
Conrad has opened it up for anyone to take over development, so if you're interested, please go for it - all the files and info are below. The Speedsolving wiki is currently using Mediawiki version 1.19.0, but I plan to upgrade it to 1.23.5 (the latest at the time) soon (in the next week or so).

Current issues are the images not being generated properly (see VisualCube below), though I'm not sure if it will work with 1.23.5, so whoever takes over on development please work on making it work on 1.23.5. You can install Mediawiki and test the extension.

If you get it working for 1.23.5, please go ahead and post the updated files here. Note that the current issues are likely easy fixes, and an update might not even be needed for 1.23.5. However, it is necessary that we have someone take over the development for when issues like we're currently experiencing arise, and for future upgrades.

This is the AlgDB:
http://cube.crider.co.uk/algdb.php

And it is integrated into the wiki here:
https://www.speedsolving.com/wiki/index.php/Special:AlgDB

Mediawiki software:
http://www.mediawiki.org/wiki/MediaWiki

https://www.dropbox.com/s/vocyxu6d5cndx9q/algdb.zip?dl=0
Sample data to populate the DB: https://www.dropbox.com/s/tyct5vyyck15b0c/algdb_data.sql?dl=0

There was an update released in May, 2010:
https://www.dropbox.com/s/jy0ep904jca4w3d/algdb-update-v1.02.zip?dl=0

It is available in the Wiki as a special page, for example by visiting Special:AlgDB. The extension its self is installed under the extensions directory for example: /extensions/algdb and integrating it into the Wiki is as straight forward as updating the LocalSettings.php file to add the line:
require_once("$IP/extensions/algdb/algdb.setup.php"); The system is pretty much fully integrated into the wiki. Its embedded into the layout via a 'Special' page, and should be internally linkable from other pages. It also uses the wiki authentication system, so that only logged in users can add algorithms, and only sysops, develpers or beaurcrats can fiddle the admin features. The only thing which isn't part of the wiki are the cube images generated by visualcube (which is installed separately). Visualcube: https://www.speedsolving.com/wiki/extensions/algdb/vcube/visualcube.php ---------[ TO INSTALL VISUALCUBE ]---------- For the cube images, they are generated by the visualcube.php script. The latest version is available on sourceforge here: http://sourceforge.net/projects/vcube/files/visualcube-src-0.3.0.tar.gz/download There is an image caching feature implemented. Enabling it means that the vast majority of requests will be for pre-cashed images stored in the database, rather than requiring the script to build them. It makes quite a difference when loading pages of cube images. To enable the caching feature do the following: 1. Go into the database and create the table required using the code in the file db_schema.sql (if you're using phpmyadmin select the database and paste the sql into the query textbox). 2. Edit the visualcube.php script and update the following variables: *$DB_NAME
* $DB_USERNAME *$DB_PASSWORD
* $ENABLE_CACHE = true; 3. This step is optional but probably recommended. In order to keep the database consumption down there's a pruning script called visualcube_dbprune.sh. Change the database details in the script and upload it to your web server. Once that's done, set up a crontab to run the script (there are instructions on how to do this at the bottom of the visualcube_dbprune.sh script). ----- As for the AlgDB update released in May, 2010: https://www.dropbox.com/s/jy0ep904jca4w3d/algdb-update-v1.02.zip?dl=0 These were the main updates made: 1. BUGFIX: Swap CLS + ELS 2. BUGFIX: Sorted out COLL/CLL/ELL plan view 3. FEATURE: "add" link on view pages, for ease of access 4. FEATURE: Allow removal of individual algs (currently admin only) 5. FEATURE: Improved parsing of user input to allow: "", "R'2" and "Rw" 6. BUGFIX: Fixed verification problem for algs ending in x2 rotations 7. FEATURE: Improved duplicate detection, for duplicate algs posted with different rotations 8. FEATURE: Bulk algorithm upload 9. FEATURE: Link to alg.garron.us for algorithm animations 10. FEATURE: Initial rotations in separate column, final rotations hidden 11. FEATURE: All AUFs automatically replaced with y rotations for LL algs See attached zip file for the updates. As usual, just unzip the files to the algdb directory and set the following variables in algdb.php:$DB_NAME="_____________";
$DB_USERNAME="____________";$DB_PASSWORD="____________";
--------------

#### pjk

Staff member
The wiki has been upgraded to 1.23.5.

The AlgDB is definitely not compatible, and getting this error:
Fatal error: Call to undefined function wfLoadExtensionMessages() in /speedsolving/wiki/extensions/algdb/algdb_body.php on line 5
I've temporarily disabled the AlgDB until this gets fixed (by commenting it out on the LocalSettings.php).

Has anyone taken over to develop this? If so, please post here so we can coordinate. All of the files are posted above.

#### rowehessler

##### Member
The wiki has been upgraded to 1.23.5.

The AlgDB is definitely not compatible, and getting this error:

I've temporarily disabled the AlgDB until this gets fixed (by commenting it out on the LocalSettings.php).

Has anyone taken over to develop this? If so, please post here so we can coordinate. All of the files are posted above.
i hope this gets fixed soon...

#### pjk

Staff member
Is anyone working on updating the AlgDB and Visualcube for the upgraded Mediawiki? It would be worth coordinating so we all know who is doing what.

#### Methuselah96

##### Member
Is anyone working on updating the AlgDB and Visualcube for the upgraded Mediawiki? It would be worth coordinating so we all know who is doing what.
I'm working on it.

#### cubizh

##### Super Moderator
Staff member
I'm also working on it, but I still haven't figured it out.

#### pjk

Staff member
Has anyone been able to make progress on the Alg DB so we can get it back up and running?

#### cubizh

##### Super Moderator
Staff member
So I've been trying to look at getting the wiki's algorithm database back for a while.
I really wish I had better news, but so far I've been unsuccessful, as installing mediawiki extensions and working in PHP is not exactly my area of expertise.
I have tried to ask more knowledgable people to see if they could help, several people tried it (or said they did) but none seemed to either be interested and/or managed to work on it either.
So after a while of waiting for external help, I decided to take a stab at it myself and see how far I could go.
So I'm posting this here so that someone else that knows better and could potentially help out could tell me what else I could do.

First I tried to install Mediawiki locally (and manually) to work on it. Created a database, a db user and everything installed fine. At least this worked:
Given pjk's directions in a previous post, I started by replacing the original algdb files (algdb.php, algdb_lib.php and cube_lib.php) that were updated by the later release.
After that I edited algdb.php, defining the same database and user as mediawiki.
Code:
	$DB_NAME="*******";$DB_USERNAME="***********";
$DB_PASSWORD="*****";$SCRIPT="algdb.php";
$VISCUBE="http://***************/extensions/algdb/vcube/visualcube.php"; ... ... ...$SCRIPT="http://***************/index.php/Special:AlgDB";
The second $SCRIPT variable defined in line 57, as it was directly pointing at the speedsolving wiki. After that it was time to work no visualcube instalation. Edited the database, created the table mentioned in the attached sql file in the same database as before, for cache. I used phpmyadmin for this. I also edited the visualcube.php file to the same values in Code: $DB_NAME="*******";
$DB_USERNAME="***********";$DB_PASSWORD="*****";
Then moved vcube/ into algdb/ so it would match the relative path defined earlier.
Seemed it was a good time to try to get the the extension installed and see what eventual errors I got. So I moved the aldgb/ folder into extensions, edited mediawiki's LocalSettings.php to add on the last line
Code:
require_once "\$IP/extensions/algdb/algdb.setup.php";`
After that I tried to access the Special:AlgDB page, but all I get is a blank page.

The algdb setup script is being run, since I added an echo "" to it and I see it on the browser, but nothing shows up either in the Special pages list (gives me a 404) or in Special:AlgDB page (gives me a blank page) and no database algdb tables are created. So even though the setup has run, the extension isn't loading, so I'm stuck.
Not sure what I'm missing or if I did anything wrong, but any help would be appreciated, particularly if you know how to work with PHP stuff like this and have a few moments to spare.