Hi,

The more I thought about this kind of thing, the more I realised I'd need to be 
able to do what you're attempting so I wrote a little tool in Java (judging by 
the OSX discussions over here at the moment that will make me unpopular but 
hey).

Heres what you need to do:

Fill out the following:

1.  The MySQL User name & Password
2.  The host name or IP of the MySQL database
3.  The name of the Rivendell database
4.  The rivendell user name for the panels you want to change (or a host name 
if you do things that way)

I've coded in the usual Rivendell defaults as I got bored of typing them in 
each time but obviously change these to however your setup is at the moment.

5. Then click on Read Database.

All settings accounted for you'll have a list of Panels as seen in the screen 
shot (http://www.thevoiceasia.com/rivendell/rivpanelmover.jpg).

6. Click the up and down buttons denoted by ^^ and vv because I'm too lazy to 
make icons to move your selected panel up or down the list.

7. When you're happy hit save.

At this point the program simply does the following:

1.  Loops through the list and writes them in the proper order with an offset 
of 10000 (so I don't have to program in lots of swapping and checking for 
existing records)

E.g if you have a modified list of 1, 3, 2; 1 becomes 10000, 3: 10001, 2: 10002.

This is two queries that go a bit like this:

update PANEL_NAMES set PANEL_NO=10000 where PANEL_NO=1 and OWNER='user';//This 
avoids overwriting panels for other users or host specific ones
update PANELS set PANEL_NO=10000 where PANEL_NO=1 and OWNER='user';

2.  Amends both tables now in the correct order to remove the offset with a 
simple:

update PANEL_NAMES set PANEL_NO=PANEL_NO-10000 where OWNER='user' and 
PANEL_NO>9999;
update PANELS set PANEL_NO=PANEL_NO-10000 where OWNER='user' and PANEL_NO>9999;

Thats literally all the thing does.  I've uploaded the complete Eclipse project 
which has all the source code and a version of the standard mysql-connector 
library bundled with it so it should pretty much run out of the box (you'll 
have to amend the project Java runtime in the project properties):

http://www.thevoiceasia.com/rivendell/rivpanelmover.tar.gz (669KB 99% of which 
is the mysql lib)

Failing that just rip out the src directory and you have your 3 small java 
source files, libs contains the mysql lib you need to connect or you can 
download it from here:

http://dev.mysql.com/downloads/connector/j/

For the extra lazy I've got a self contained executable jar file:

http://www.thevoiceasia.com/rivendell/rivPanelMover.jar (674KB 99% of which is 
the mysql lib)

Please note the code is a bit meh as I originally started the more complicated 
nested looping of swapping records around until I got bored and did it the 
easier way it is now so there is some functionality in the helper class that 
isn't really needed anymore.

The jar will run on Windows or variations of nix (should even work on a mac but 
I haven't got one to test).

Any questions let me know, check the source code first and run it on some test 
db rather than your live machines don't take my word for the fact that it 
"works".

Regards,

Wayne

-----Original Message-----
From: [email protected] on behalf of Geoff Barkman
Sent: Thu 30/08/2012 21:41
To: User discussion about the Rivendell Radio Automation System
Subject: Re: [RDD] sound panel / hotkeys swapping
 
Hi Wayne
Thats the kind of thing I was expecting to do.
My wife is an expert on mysql... so I'll get her assistance me thinks.
I figured there would be a bit of a shuffle to do. All my panels are
user panels ....because that the best way, that I've discovered to
have the same panels across my network of 4 rivendell computers.
I even made a refresh buttons macro to show any changed buttons across
my network on all the machines.
Cheers
Geoff




#######################
Scanned by MailMarshal
#######################

############

Attention: 

The information contained in this message is confidential and intended 
for the addressee(s) only. If you have received this message in error 
or there are any problems, please notify the originator immediately.
The unauthorised use, disclosure, copying or alteration of this message
is strictly forbidden. Christian Vision or any of its subsidiaries will
not be liable for direct, special, indirect or consequential damages 
arising from alteration of the contents of this message by a third party
or as a result of any virus being passed on. Please note that we reserve
the right to monitor and read any e-mails sent or received by the 
company under the Telecommunications (Lawful Business Practice) 
(Interception of Communications) Regulation 2000. Christian Vision is 
registered in England as a limited company 2842414 and as a charity 
1031031  

############
_______________________________________________
Rivendell-dev mailing list
[email protected]
http://lists.rivendellaudio.org/mailman/listinfo/rivendell-dev

Reply via email to