.
Hey guys. I got most of my table bugs and slide show figured out. A
couple of minor annoyances. It's tough to keep the tables level at the
top depending on what browser your using. Also, sometimes when you
first open a window to the site, if you try to scroll down before the
browser is done displaying the page it will push the business card
slide show, that's in the left collumn, further down the collumn and
over one of the other ads. Here's the link, any suggestions?
http://pioneerdistrict.org/troubadour/
And thanks to all who have been emailing me with suggestions!
Michael Baibeau
Editor Troubadour
Pioneer District
A great free resource for html code instruction is PageTutor.com. On that
site, you can run (online) or download for free, a great tutorial on all the
basic HTML codes. His site would assume that you only have Notepad. On
your editor, you would need to switch to a code view to work at this level.
The address is: <http://www.pagetutor.com/> http://www.pagetutor.com/
Click on the "Basic HTML Tutor on the left to get to this page:
<http://www.pagetutor.com/html_tutor/index.html>
http://www.pagetutor.com/html_tutor/index.html
You will notice an offer to download all of it near the top Heading.
Back at the main page, you'll see for many aspects of web page programming
including your CSS. You must be a member to view some of the tutorial
pages. If you find you like his basic tutorial, his others are the same
format.
Steve Sutherland
Sing Barbershop!
-Director, Gentlemen Songsters <http://www.harmonize.com/doc/doc.htm>
Chorus-Detroit-Oakland Chapter SPEBSQSA
-Baritone, Night <http://www.harmonize.com/NightShift/Night_Shift.htm>
Shift
-Meads Mill Middle <http://www.northville.k12.mi.us/meadsmill/mmill.htm>
School Computer Electives
Note: All messages and attachments are Virus Scanned before sending.
[Non-text portions of this message have been removed]
.
LOL, sorry fellas!
I thought I was posting to a newsgroup called the Barbershop Webmasters Guild,
a great bunch of barbershop geeks from all over the country who have been a huge
help with our chorus website. If your working on a website and have questions
come join up with us! BbshopWebGuild-subscribe@yahoogroups.com
Michael Baribeau
Webmaster@...http://GreatLakesChorus.org
Grand Rapids, MI
Michael Baribeau <michaelbaribeau@...> wrote:
Thank you Jerome Gobuyan, Stephen Volkmann, and David Maxwell for your
contributions!
I'm just a novice with more enthusiasm then knowledge but I'm learning. I'm
fuzzy on html and don't know much about css. I'm using the free Nvu wysiwyg html
editor.
Since CSS has been recommended I'm trying both an html and css version. I'm in
the dark about the css (if you know a good free css editor please let me know)
but I'm giving it a shot.
Both versions look fine with Firefox but in IE a few different things go wrong
with the CSS version. BTW, I do want the table sizes at a set value.
CSS version in IE the margins are suppose to be 10px and appear to be correct in
the lower tables but not the top table, the margin is too narrow around the top
logo photo and the blue bar with text below it. It all looked ok in the editor
and again worked fine in Firefox (and ok with the the html version).
CSS verison in IE the lower tables I want centered side by side but if I set
both to center then one goes to the bottom so for now I have one set to center
and one set to left. Can't figure how to get around that.
CSS version in IE when the browser window is reduced to the Restore Down size
the right lower table is moved to beneath the lower left table (didn't look for
this in Firefox).
For both CSS and HTML in some PCs with IE the text in the top blue bar is the
wrong size and makes two lines of text instead of one so I'm thinking of just
getting a screen shot of it and putting it in as an image instead.
Here's the two versions, any input appreciated...
HTML
http://greatlakeschorus.org/Troubadour10y.html
CSS
http://greatlakeschorus.org/Troubadour15.html
Michael Baribeau
Webmaster@...http://GreatLakesChorus.org
Grand Rapids, MI
---------------------------------
Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now.
[Non-text portions of this message have been removed]
---------------------------------
Be a better pen pal. Text or chat with friends inside Yahoo! Mail. See how.
[Non-text portions of this message have been removed]
Just to clarify, the margin style definitions go into the outer <div>
tag, The outer <div> container is what gets centered relative to the
page. The inner <div> containers just go along for the ride.
<div style="width:970px; vertical-align:top; margin-left: auto;
margin-right: auto">
<div style="width:485px; float:left;">
<table width="100%"><tr><td>Table 1</td></tr></table>
<table width="100%"><tr><td>Table 2</td></tr></table>
</div>
<div style="width:485px; float:right;">
<table width="100%"><tr><td>Table 3</td></tr></table>
</div>
<br style="clear:both;" />
</div>
>
> This seemed to work:
>
> http://www.thescripts.com/forum/thread100046.html
>
> Basically you need to put "margin-left: auto; margin-right: auto;" to
> the first div style.
>
> Jerome Gobuyan
>
Michael, note the style in the table <td Style.> copy this to your editor
and note the text is now centered in each cell. I turned on the border for
one of the cells just as reference.
Regards,
Stephen Volkmann
Webmaster, LEAD Chair of Singing Valentines
The Barrie County Chordsmen
<html>
<head>
<title>Untitled</title>
</head>
<body>
<div style="width:970px; vertical-align:top;">
<div style="width:485px; float:left;">
<table border="1" align="center" width="100%">
<tr>
<td style="text-align:center;">Table 1</td>
</tr>
</table>
<table width="100%">
<tr>
<td style="text-align:center;">Table 2</td>
</tr>
</table>
</div>
<div style="width:485px; float:right;">
<table width="100%">
<tr>
<td style="text-align:center;">Table 3</td>
</tr>
</table>
</div>
<br style="clear:both;" />
</div>
</body>
</html>
Regards,
Stephen
(705) 719-2407
-----Original Message-----
From: BbshopWebGuild@yahoogroups.com [mailto:BbshopWebGuild@yahoogroups.com]
On Behalf Of Jerome Gobuyan
Sent: Thursday, November 15, 2007 1:37 PM
To: BbshopWebGuild@yahoogroups.com
Subject: {Disarmed} [BbshopWebGuild] Re: centering tables
--- In BbshopWebGuild@ <mailto:BbshopWebGuild%40yahoogroups.com>
yahoogroups.com, "Michael Baribeau"
<michaelbaribeau@...> wrote:
>
> I've been searching for code that will allow changes to one table not
> effect the adjacent side by side one and finally found this codes that
> does that!
>
> <div style="width:970px; vertical-align:top;">
>
> <div style="width:485px; float:left;"><table
> width="100%"><tr><td>Table 1</td></tr></table><table
> width="100%"><tr><td>Table 2</td></tr></table></div>
>
> <div style="width:485px; float:right;"><table
> width="100%"><tr><td>Table 3</td></tr></table></div>
>
> <br style="clear:both;" />
>
> </div>
>
>
>
> But I can't figure how to get it to center on the page, right now the
> tables align to the left of the page. Any ideas?
>
> http://greatlakesch <http://greatlakeschorus.org/Troubadour10.html>
orus.org/Troubadour10.html
>
> Michael Baribeau
> Webmaster@...
> http://GreatLakesCh <http://GreatLakesChorus.org> orus.org
> Grand Rapids, MI
>
>
This seemed to work:
http://www.thescrip <http://www.thescripts.com/forum/thread100046.html>
ts.com/forum/thread100046.html
Basically you need to put "margin-left: auto; margin-right: auto;" to
the first div style.
Jerome Gobuyan
--
This message has been scanned for viruses and
dangerous content by <http://www.vpnetworks.ca/> VPNetworks(11), and is
believed to be clean.
[Non-text portions of this message have been removed]
--- In BbshopWebGuild@yahoogroups.com, "Michael Baribeau"
<michaelbaribeau@...> wrote:
>
> I've been searching for code that will allow changes to one table not
> effect the adjacent side by side one and finally found this codes that
> does that!
>
> <div style="width:970px; vertical-align:top;">
>
> <div style="width:485px; float:left;"><table
> width="100%"><tr><td>Table 1</td></tr></table><table
> width="100%"><tr><td>Table 2</td></tr></table></div>
>
> <div style="width:485px; float:right;"><table
> width="100%"><tr><td>Table 3</td></tr></table></div>
>
> <br style="clear:both;" />
>
> </div>
>
>
>
> But I can't figure how to get it to center on the page, right now the
> tables align to the left of the page. Any ideas?
>
> http://greatlakeschorus.org/Troubadour10.html
>
> Michael Baribeau
> Webmaster@...
> http://GreatLakesChorus.org
> Grand Rapids, MI
>
>
This seemed to work:
http://www.thescripts.com/forum/thread100046.html
Basically you need to put "margin-left: auto; margin-right: auto;" to
the first div style.
Jerome Gobuyan
Hi Guys
Well, the October issue of the AIC Medallion is now finished and available
to you.
See www.AICGold.com
Pass it around.
This 32-page issue features several special items. Exclusive to the
Medallion is a VIP Tour of the new Society Headquarters in Nashville with
photos.
We also have included some up to the minute information on Freddie King and
his latest health issues, same for Buzz Haegar. I understand both men are
recovering.
Just a few days after the Sweet Adelines convention in Calgary we have the
results and photos in this issue (how's THAT for up-to-date info?).
There are several AIC brothers involved in the district competitions going
on this month. We have some results and guys to watch.
I also did a little show and tell of AIC quartet websites.
Did you hear about the incredible speech Dr. Jim Henry gave at Harmony
University? We've included an excerpt and where you can see and hear the
entire presentation in this issue.
I'm excited to share some news of new releases by 139th Street, Johnny
Sherburn, and Acoustix.
We're also trying to keep up with three new groups, Old School, Crossroads
and Masterpiece. Check this issue for the latest news of each.
Marquis and Interstate Rivals participated in a recent tribute to Jim
Miller. It was quite an event and we cover it in this issue. The great Don
Clause was also honored recently.
Quartet News includes photos from Realtime in Russia, Antique Gold on the
big screen, Vocal Spectrum headlining a cruise and the original Acoustix
performing again recently.
As a little something extra, check out the article on basses fathering more
children.
Go to the AICGold web page and click on the cover of this image on the left.
You can also read back issues of The Medallion back to 2005.
Hope you enjoy it.
Grady Kerr - Editor
[Non-text portions of this message have been removed]
.
Following whois info on Wildcardquartet.com I think it's saying that
http://www.enom.com/ has the domain name now but when I go to their
site they want me to pay a fee just to login and check. Is this
legit?
I see that greatlakeschorus.com has become available now.
Michael
--- In BbshopWebGuild@yahoogroups.com, "Michael Baribeau"
<michaelbaribeau@...> wrote:
>
> .
> I've been trying to get back 2 'expired' addresses,
>
> http://greatlakeschorus.com (not our .org one) and
>
> http://wildcardquartet.com
>
> When checking on them I get the dead end, "Since your domain was
> acquired through one of our resellers, you will need to contact
them
> directly for assistance with your domain name, login or DNS
> assistance." And the only contact I can find is a legal email
> address they don't respond to my requests. Below I've included my
> request email and what info I was able to find. Any ideas?
>
>
> Michael Baribeau
> Webmaster@...
> http://GreatLakesChorus.org
> Grand Rapids, MI
>
> "Singing is just sustained talking." Prof. Harold Hill
>
>
>
> We are trying to locate the wildcardquartet.com name
> that has appeared to have chaged registars through
> you. We still want this name and need it pointed to a
> different site now. Can you please help? I went to
> http://www.enom.com/help/default.asp and got the
> following to contact this email address...
>
>
>
> To request HELP for your Domain Name management, you
> will need to contact your Domain Name Reseller. Enter
> in your Domain Name below to retrieve your Reseller
> contact information.
> Reseller Information Retrieval Tool
> wildcardquartet.com
> Organization: Whois Privacy Protection Service, Inc.
> Address: PMB 368, 14150 NE 20th St - F1
>
> Bellevue, WA98007
> Phone: +1.4252740657
> Fax: +1.4256960234
> Email: legal@...
>
> Since your domain was acquired through one of our
> resellers, you will need to contact them directly for
> assistance with your domain name, login or DNS
> assistance. We do not have access to this data. Their
> contact information can be listed above for your
> convenience after you submit your domain name.
>
>
> Michael
>
.
I've been trying to get back 2 'expired' addresses,
http://greatlakeschorus.com (not our .org one) and
http://wildcardquartet.com
When checking on them I get the dead end, "Since your domain was
acquired through one of our resellers, you will need to contact them
directly for assistance with your domain name, login or DNS
assistance." And the only contact I can find is a legal email
address they don't respond to my requests. Below I've included my
request email and what info I was able to find. Any ideas?
Michael Baribeau
Webmaster@...http://GreatLakesChorus.org
Grand Rapids, MI
"Singing is just sustained talking." Prof. Harold Hill
We are trying to locate the wildcardquartet.com name
that has appeared to have chaged registars through
you. We still want this name and need it pointed to a
different site now. Can you please help? I went to
http://www.enom.com/help/default.asp and got the
following to contact this email address...
To request HELP for your Domain Name management, you
will need to contact your Domain Name Reseller. Enter
in your Domain Name below to retrieve your Reseller
contact information.
Reseller Information Retrieval Tool
wildcardquartet.com
Organization: Whois Privacy Protection Service, Inc.
Address: PMB 368, 14150 NE 20th St - F1
Bellevue, WA98007
Phone: +1.4252740657
Fax: +1.4256960234
Email: legal@...
Since your domain was acquired through one of our
resellers, you will need to contact them directly for
assistance with your domain name, login or DNS
assistance. We do not have access to this data. Their
contact information can be listed above for your
convenience after you submit your domain name.
Michael
Actually, there are ways around the printing problem. Adobe .PDF format
has substantial protections available, including requiring a password for
printing at all, or only for high-resolution printing but allowing low-res
printing without a password (if that option is enabled, a person can only
print an image that would look rather jaggy even on a home-quality inkjet
printer, unless s/he has the password).
Myriad Harmony Assistant's native .MYR format has similar protections
available, but not the low-res print option. It will allow the copyright
holder to set a password, and decide in any combination which of these
actions (if any) a person without the password can do: Load the file at all
for any reason (including playback - of course, activating this protection
renders all of the others effectively active as well, even if they aren't
specifically activated), Save it (with or without changes), Edit it in any
way other than setting General Tempo (even if the changes aren't saved -
this includes the ability to even drag-select any portion of the music, thus
also inhibiting the ability to copy anything out of such a document and
pasting it into any other document, whether .MYRiad or otherwise), Print (at
all), Export Graphically (.TIF, .JPG, .PDF, etc.), and/or Export Audibly
(.MID, .WAV, AIFF, .MP3, Ogg Vorbis, etc.).
In addition to such protections, it also can force the display of a
splash screen any time the file is loaded, which clearly displays its title,
writer(s)/composer(s), arranger(s), copyright notices, and direct, clickable
E-Mail and/or Web links to the copyright holder, so that there can be no
excuse that someone thought that the arrangement wasn't copyrighted or
didn't know by whom or how to contact him or her (not that the latter should
ever be an excuse anyway).
It's partly for these reasons that I keep promoting these Myriad
programs, as they provide a reasonably secure means of distribution, with
the Virtual Singer, allowing potential customers to hear a halfway decent
representation of what the arrangement sounds like when sung (better than
MIDI trombones, anyway!) while keeping the file size small (a typical
.MYRiad file is only somewhat larger than a MIDI file of the same song would
be [and sometimes is smaller, especially if repeated sections occur since
MIDI has to include the repeats each time while .MYR files only have them
once], and thus WAY smaller than even the most highly compressed .MP3 or Ogg
Vorbis audio file!). Nothing is perfect, of course. A determined willful
infringer will be able to get around the protections (for instance, by
screen-scraping the image of the sheet music as displayed within the Myriad
program, or by hooking the sound card audio out to an external recording
device to record the output), but these are certainly enough to keep the
honest people honest, as it were. But if the law required perfect security,
the entire Internet would be illegal, as would nearly every business of
every kind in existence.
For all of this power, Myriad Harmony Assistant with the Virtual Singer
add-on and even the extra-cost Gold SoundBase (which most Barbershop
arrangers wouldn't need, but some might want if they wanted to arrange
instrumental types of music as well), combined, cost less COMBINED,
BRAND-SPANKING NEW, than it takes to UPGRADE Finale from the immediately
previous version! Oh, and it both imports and exports Finale, Noteworthy
Composer, and other common formats directly, as well as through MusicXML,
and of course there's always MIDI. A new stand-alone program from Myriad,
called PDF-to-Music, does just what the name implies: extracts music from
.PDF-printed sheet music (not the same as musical OCR such as PhotoScore or
SharpEye or Myriad's own OMeR, since such .PDF files typically exist
internally in the form of line-art staves with notes and other symbols bring
printed from a musical symbols font such as Finale's Sonata or Maestro, or
Myriad's own SToccata: these can be read with far more accuracy and
reliability than bitmapped images from a scanner), thus enabling importing
even from old discontinued sheet music programs that Myriad cannot otherwise
import from. If it can print, and you have a .PDF printer driver, then you
can get it into Myriad, without the notational loss inherent in MIDI
transfers.
-----Original Message-----
From: BbshopWebGuild@yahoogroups.com [mailto:BbshopWebGuild@yahoogroups.com]
On Behalf Of Derek Hatley
Sent: Thursday, August 02, 2007 2:12 PM
To: Carol Donnelly
Cc: BbshopWebGuild@yahoogroups.com
Subject: Re: [BbshopWebGuild] Downloading sheet music from chorus web site
Carol,
I fear that would be a copyright liability nightmare. Music
publishers have been bitten a lot in recent years by music "sharing"
on the web, and have successfully shut down sites that do it. The
fact that it's members-only wouldn't help - copyrighted material
would still be directly downloadable by any member. It would be
possible to set it up so that one would have to pay for the score
before downloading, but there would still be no control over how many
printed copies were made.
Which answers your second question - after one download, any number
of copies can be printed off without the original source knowing
anything about it.
It's a nice thought, but I don't think it would fly.
Harmoniously,
Derek
Visit my arrangements web site at:
http://www.HatleyMusic.com
Derek Hatley, Arranger & Music Librarian
Great Lakes Chorus
Grand Rapids Chapter
Pioneer District
E-mail: Derek@...
On Aug 2, 2007, at 2:13 PM, Carol Donnelly wrote:
> I think that having the chorus music files on the website
> (password-protected members-only section) would be a good way to save
> paper and to make sure that members had access to the latest version
> (if changes have been made).
>
> Given that the chorus usually purchases X number of copies of a song,
> I'm wondering if there is a way to track how many copies have been
> downloaded and by whom.
>
> Please forgive me if this has been covered before. If so, a personal
> reply will do rather than bothering the group. Thanks.
>
> Carol
Yahoo! Groups Links
Carol,
I fear that would be a copyright liability nightmare. Music
publishers have been bitten a lot in recent years by music "sharing"
on the web, and have successfully shut down sites that do it. The
fact that it's members-only wouldn't help - copyrighted material
would still be directly downloadable by any member. It would be
possible to set it up so that one would have to pay for the score
before downloading, but there would still be no control over how many
printed copies were made.
Which answers your second question - after one download, any number
of copies can be printed off without the original source knowing
anything about it.
It's a nice thought, but I don't think it would fly.
Harmoniously,
Derek
Visit my arrangements web site at:
http://www.HatleyMusic.com
Derek Hatley, Arranger & Music Librarian
Great Lakes Chorus
Grand Rapids Chapter
Pioneer District
E-mail: Derek@...
On Aug 2, 2007, at 2:13 PM, Carol Donnelly wrote:
> I think that having the chorus music files on the website
> (password-protected members-only section) would be a good way to save
> paper and to make sure that members had access to the latest version
> (if changes have been made).
>
> Given that the chorus usually purchases X number of copies of a song,
> I'm wondering if there is a way to track how many copies have been
> downloaded and by whom.
>
> Please forgive me if this has been covered before. If so, a personal
> reply will do rather than bothering the group. Thanks.
>
> Carol
.
I've been looking for some kind of cd, either software
or audio, that will allow me to sing with 3 other
voices for a quartet sound. I know the polecat
learning cd's have the part I would sing in one
speaker that I can turn off but is still faintly in
the other speaker. The only thing online I can find
is the multimedia cd at the link below...
http://harmonymarketplace.com/barquarcdrom.html
...I think it would allow me to arrange the 3 other
parts for me to sing with but I'm not sure. Any
suggestions?
I did find a page on barbershopboard.com with a couple
tag recordings with Tim Waurick, tenor of Vocal
Spectrum. You can learn with your part or harmonize
without your part. Once at the page scroll down for
the 2 free tags there...
http://barbershopboard.com/tags/
Michael Baribeau
Webmaster@...http://GreatLakesChorus.org
Grand Rapids, MI
________________________________________________________________________________\
____
Shape Yahoo! in your own image. Join our Network Research Panel today!
http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7
I think that having the chorus music files on the website
(password-protected members-only section) would be a good way to save
paper and to make sure that members had access to the latest version
(if changes have been made).
Given that the chorus usually purchases X number of copies of a song,
I'm wondering if there is a way to track how many copies have been
downloaded and by whom.
Please forgive me if this has been covered before. If so, a personal
reply will do rather than bothering the group. Thanks.
Carol
Status at 9:33 am CDT, 7/31/07:
1. Main content site www.barbershop.org has been down for
relocation of the data center from Miami to Tampa. It has taken longer
than they promised. I have called the data center every other hour to
get updates; latest report came at 9:00 am CDT with "no news." Trouble
tickets have been entered; we can only wait.
2. Customers can still place orders by navigating directly to
www.harmonymarketplace.com -- apparently the habit is pretty strong
toward going to barbershop.org and clicking the link there.
3. Members Only has been restored to service. (Thanks, Nick!)
Members can loong by going directly to
secure.spebsqsa.org/members/login.asp
4. Harmony U dispatches and pix:
http://harmonyuniversity.blogspot.com
Brian
Hi guys
The July Issue of The AIC Medallion is NOW available. You can access it via
www.AICGold.com <http://www.aicgold.com/> . Just click on the link on the
left.
You can read it online or download and read on your computer.
This issue is FULL (and I do mean FULL) of stories and photos from the
Denver Int'l. At 43 pages and 125 photos, it may be the largest issue to
date. I would NOT recommend reading this issue in one sitting. : )
Of course we highlight our "new" champs Max Q, their win, their story and
bios. We also report on the quartet and chorus contests, Sing With The
Champs, Good News! Gospel Sing, The Purdy Corral, Awesome Joe, Gentleman
Grapes and Vocal Spectrum's week.
We have special coverage of the AIC Show and the AIC Breakfast.
I'm happy to include the stories of Classic Collection and Dan Aycock of the
Lads of Enchantment in this issue.
You'll also find our tributes to the late George Evans and Jim Casey.
Be sure to check out the piece on Nashville quartets, the impressive rise of
Ignition and the special auction of a classic collection of championship
memorabilia.
Enjoy
Grady Kerr
Barbershop Historian / Webmaster / Editor
9498 East Valley Ranch Pkwy #1107
Irving, Texas 75063
214 57 GKERR (214.574.5377)
<http://www.gradywilliamkerr.com/> www.GradyWilliamKerr.com
<mailto:Grady@...> Grady@...
My memory's not as sharp as it used to be.
Also, my memory's not as sharp as it used to be.
[Non-text portions of this message have been removed]
.
Thanks Joel and Murray!
I changed the script to just...
<script type="text/javascript">
new fadeshow(fadeimages, 572, 200, 0, 3000, 1)
</script>
...but still doesn't work.
Marray, you said I might be missing the CSS. I pasted
everything the site supplied, am I then missing some
file/folder?
Michael
--- Joel Rea <joelrea@...> wrote:
> Line 272 on your page has a syntax error. This is
> not in the script itself,
> but in the black bar, where you're attempting to
> call the script. There you
> currently have TWO <script ...> tags followed by two
> commented-out attempts
> to call it (one of them being merely documentation
> on the call format), as
> follows:
>
>
> <script type="text/javascript">
> <script type="text/javascript">
> //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width,
> slideshow_height, pause,
> optionalRandomOrder)
> //new fadeshow(fadeimages, 572, 200, 0, 3000, 1)
>
> </script><br>
>
> Get rid of one of the <script
> type="text/javascript"> tags, then
> uncomment the second call to "fadeshow".
>
> Thanks for asking this. I didn't know until I
> checked out the site just
> now that they had updated the script to Version 1.5,
> to work with older IE
> versions, add the Randomizing feature, and add the
> ability to Pause the
> slideshow with a mouseover (your final "1"
> parameter). For ease of reading
> the logic of the code, you may want to change the
> "1" to "true".
>
> I can see some improvements I may suggest making
> to the script. I altered
> the earlier version that I use to support fading in
> Opera 9 and future CSS3
> browsers, by adding use of the "opacity" CSS3
> parameter (Opera 9 is the only
> browser I know of to support it at this time, and
> even they don't support
> much else of CSS3 yet).
>
> One change I would like to make to both versions
> is to have it preload
> each image the first time through while the previous
> image is still being
> displayed, extending the hold time of that image if
> need be. That would
> improve the apparent speed of your page load for
> dial-up users. Right now,
> it loads all of the images before moving to the
> second image, causing a
> substantially long delay before the slideshow
> appears to start for dial-up
> users, if you have more than a few images of more
> than 16kB or so each.
>
>
> -- Joel Rea, SWD Webmaster
> (Please Reply to Webmaster@... for private
> replies -- for some reason,
> YahooGroups won't let me add that address to my
> Profile for use on this
> YahooGroup -- GRRRRR!!)
>
>
> -----Original Message-----
> From: BbshopWebGuild@yahoogroups.com
> [mailto:BbshopWebGuild@yahoogroups.com]
> On Behalf Of Michael Baribeau
> Sent: Thursday, June 21, 2007 4:31 PM
> To: BbshopWebGuild@yahoogroups.com
> Subject: [BbshopWebGuild] fade in slide show
>
> I followed these instructions...
>
>
http://www.dynamicdrive.com/dynamicindex14/fadeinslideshow.htm
>
>
> ...to set up this slide show in the center black
> table at this link...
>
> http://wildcard4.com/indexz.html
>
> ...but it's not working.
>
> I looked over SWD.org but couldn't figure how it's
> slideshow works.
>
> The site I'm working on isn't barbershop related but
> any input would
> be appreciated if someone could take a look at the
> script.
>
> Michael
>
>
________________________________________________________________________________\
____
Park yourself in front of a world of choices in alternative vehicles. Visit the
Yahoo! Auto Green Center.
http://autos.yahoo.com/green_center/
Line 272 on your page has a syntax error. This is not in the script itself,
but in the black bar, where you're attempting to call the script. There you
currently have TWO <script ...> tags followed by two commented-out attempts
to call it (one of them being merely documentation on the call format), as
follows:
<script type="text/javascript">
<script type="text/javascript">
//new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, pause,
optionalRandomOrder)
//new fadeshow(fadeimages, 572, 200, 0, 3000, 1)
</script><br>
Get rid of one of the <script type="text/javascript"> tags, then
uncomment the second call to "fadeshow".
Thanks for asking this. I didn't know until I checked out the site just
now that they had updated the script to Version 1.5, to work with older IE
versions, add the Randomizing feature, and add the ability to Pause the
slideshow with a mouseover (your final "1" parameter). For ease of reading
the logic of the code, you may want to change the "1" to "true".
I can see some improvements I may suggest making to the script. I altered
the earlier version that I use to support fading in Opera 9 and future CSS3
browsers, by adding use of the "opacity" CSS3 parameter (Opera 9 is the only
browser I know of to support it at this time, and even they don't support
much else of CSS3 yet).
One change I would like to make to both versions is to have it preload
each image the first time through while the previous image is still being
displayed, extending the hold time of that image if need be. That would
improve the apparent speed of your page load for dial-up users. Right now,
it loads all of the images before moving to the second image, causing a
substantially long delay before the slideshow appears to start for dial-up
users, if you have more than a few images of more than 16kB or so each.
-- Joel Rea, SWD Webmaster
(Please Reply to Webmaster@... for private replies -- for some reason,
YahooGroups won't let me add that address to my Profile for use on this
YahooGroup -- GRRRRR!!)
-----Original Message-----
From: BbshopWebGuild@yahoogroups.com [mailto:BbshopWebGuild@yahoogroups.com]
On Behalf Of Michael Baribeau
Sent: Thursday, June 21, 2007 4:31 PM
To: BbshopWebGuild@yahoogroups.com
Subject: [BbshopWebGuild] fade in slide show
I followed these instructions...
http://www.dynamicdrive.com/dynamicindex14/fadeinslideshow.htm
...to set up this slide show in the center black table at this link...
http://wildcard4.com/indexz.html
...but it's not working.
I looked over SWD.org but couldn't figure how it's slideshow works.
The site I'm working on isn't barbershop related but any input would
be appreciated if someone could take a look at the script.
Michael
You need to have a CSS installed, I think.
I got it to work, but I haven't got the picture width right.
----- Original Message -----
From: "Michael Baribeau" <michaelbaribeau@...>
To: <BbshopWebGuild@yahoogroups.com>
Sent: Thursday, June 21, 2007 6:31 PM
Subject: [BbshopWebGuild] fade in slide show
|I followed these instructions...
|
| http://www.dynamicdrive.com/dynamicindex14/fadeinslideshow.htm
|
| ...to set up this slide show in the center black table at this link...
|
| http://wildcard4.com/indexz.html
|
| ...but it's not working.
|
| I looked over SWD.org but couldn't figure how it's slideshow works.
|
| The site I'm working on isn't barbershop related but any input would
| be appreciated if someone could take a look at the script.
|
| Michael
|
|
|
|
| Yahoo! Groups Links
|
|
|
|
I followed these instructions...
http://www.dynamicdrive.com/dynamicindex14/fadeinslideshow.htm
...to set up this slide show in the center black table at this link...
http://wildcard4.com/indexz.html
...but it's not working.
I looked over SWD.org but couldn't figure how it's slideshow works.
The site I'm working on isn't barbershop related but any input would
be appreciated if someone could take a look at the script.
Michael
Also interested in the OpenSource concept here. Ironically, I work for
Microsoft, but I made our website LAMP, as well.
_____
From: BbshopWebGuild@yahoogroups.com [mailto:BbshopWebGuild@yahoogroups.com]
On Behalf Of Christopher J Pomasl
Sent: Wednesday, 16 May, 2007 18:29
To: BbshopWebGuild@yahoogroups.com
Subject: Re: [BbshopWebGuild] Portals Anyone?
Written in PHP.
What I did is create a script the checks for a current logon and if the user
is not logged in, or has been inactive for more than x seconds (10 minutes),
then it splashes up the login screen. So new users get the login and absent
users re-get the login.
Then I call this script in every page on the member's site. Each page starts
and ends with the menu header and a trailer, each with their own scripts and
menu script actually calls the login script. So in order to get the standard
menu on a page, you also get the login. The login script also resets the ten
minute timer.
The ?downside? is that there are no HTML pages, but the upside is that the
deign is such that the template includes the header and footer and the rest
is content....no HTML fluff in each page.
This system has been in a hold status for quite a while (ran out of time to
devote to it) and includes a full security system that is driven by a given
user's VIP codes (PRES, VPMUS, VPMEM, WEBM, etc) . For secured pages, just
code who gets access and error message everyone else. It was close to being
implementable but not quite. I have a bunch of other stuff that never got
out of design into coding phase.
If you want to look at snippets, I can provide.
It uses LAMP technology, Linux, Apache, MySQL, PHP.
I am the roster keeper here and most of the functions that are written are
roster driven.
The designed but not coded components are file uploads and display, Event
and
calendaring, attendance requirements, etc.
Would any of you be interested in an OpenSource cooperative to design a
robust
members-only that could be generic enough for everyone? A cooperative and
open design could help alleviate the time issues and could help weed out any
design flaws.
Chris
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User
[Non-text portions of this message have been removed]
Brian,
Do you have an estimated date of Aptify going live yet?
Keith Eckhardt
FWD Webmaster
----- Original Message -----
From: "Lynch, Brian" <blynch@...>
To: <bbshopwebguild@yahoogroups.com>
Sent: Friday, April 20, 2007 9:26 AM
Subject: [BbshopWebGuild] Aptify launches this weekend; Members Only on
"limited service"
> Aptify launches this weekend; Members Only on "limited service"
>
> The Society's next-generation membership management computer systems are
> "going live" this weekend in the headquarters offices. Here's a look at
> the immediate implications for members, chapters, districts and
> quartets.
>
> Brief timetable:
>
> * Friday, 4/20/07: Processing suspended. All current orders,
> payments, memberships, quartet registrations completed and frozen.
>
> * Friday, 4/20/07: All records imported into Aptify.
>
> * Friday, 4/21/07: Saturday - Monday 4/23/07: Data conversion
> and testing.
>
> * Monday 4/23/07: Staff testing and approval.
>
> * Tuesday 4/24/07: Live processing of orders in headquarters
> using Aptify.
>
> * Through mid-May: shakedown, tuning, process improvement of
> back office
>
> * Through mid-May: continued development/testing of new
> Aptify-powered Members Only site.
>
> * Throughout: Members Only continues in "limited service" mode
> (below)
>
> * Mid-may: New Aptify-powered Members Only site comes online.
>
>
> What this means for you
>
>
> Back office processing
>
>
> All records processing will be suspended at 2 pm CDT on Friday
> 4/20/2007. Final accounting transactions will be completed by close of
> business, all data will be frozen and ready for transfer to Aptify.
>
> All new member applications and dues renewals received to date will be
> in place at go-live. Dues processing via the web site will be suspended
> until further notice; phone the Membership Department beginning
> Wednesday 4/25/2007 for renewals using a credit card.
>
> Current Harmony Marketplace orders received will be processed
> immediately; orders received over the weekend will begin processing in
> Aptify on Tuesday 4/24.
>
> Quartet registrations / renewals received to date will be processed
> before conversion. New quartets and renewals will begin processing in
> Aptify on Tuesday 4/24.
>
> Member record updates (address change etc.) received as of Friday will
> be transferred to Aptify.
>
>
> Members Only shifts to "limited service" starting this weekend
>
>
> Until further notice, a "limited service" Members Only site will
> continue to be available for basic lookups and roster functions.
> However, online renewals will be discontinued until the Aptify web site
> comes online. A summary
>
> * All lookup services will continue uninterrupted during the
> "limited service" period.
>
> * Expiration dates shown in Members Only will not reflect
> payments processed after 4/20/2007, so memberships may not reflect
> current status.
>
> * Personal record changes made using Members Only will be
> reflected in Members Only; notifications will continue to be sent to
> chapter and district secretaries; downloadable rosters will reflect
> these changes. These changes will also be reported to headquarters staff
> for entry into Aptify; however, following Aptify's web launch, all
> members will be encouraged to view their records to confirm the changes
> have been made.
>
> * Contest and Judging entries (CJ-20) for the remainder of
> spring contests should behave normally for existing quartets and
> choruses; however, new quartets created after 4/20/2007 will not appear
> in the CJ-20 system, and will need to enter contests using the hard-copy
> form. (We trust this will be a fairly small number for the few contests
> remaining in the season.) Instructions for entering the 2007
> international contest will be forthcoming.
>
> As always: your continued patience and good will are appreciated.
>
>
>
>
>
>
> KEEP THE WHOLE WORLD SINGING!
> Brian Lynch
> Barbershop Harmony Society
> 7930 Sheridan Road, Kenosha, WI 53143
> 262-653-8440 x 8554 | fax 262-654-5552
> blynch@... <mailto:blynch@...>
> www.barbershop.org <http://www.barbershop.org/>
> AOL/AIM: BTLynch
>
>
>
> [Non-text portions of this message have been removed]
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
Point taken, Mark.
I too have such a solution using Cold Fusion/MySQL.
But I agree that most chapters are not equipped to be able to pay a just fee
for the product and support services.
We even extended it to District-Level sites. But again, Districts are often
strapped and unable to pay for the product and support.
From: BbshopWebGuild@yahoogroups.com [mailto:BbshopWebGuild@yahoogroups.com]
On Behalf Of Christopher J Pomasl
Sent: Friday, May 18, 2007 1:27 PM
To: BbshopWebGuild@yahoogroups.com
Subject: Re: [BbshopWebGuild] Re: Portals Anyone?
Mark,
I know of your product and probably should have mentioned it.
I also knew that you do charge for it and that makes it not an option for
some
choruses, although I think it is a great price for what it does (sight
unseen)(5x that amount is pretty typical).
So let me say it this way, if you want a ready product with all of the
support
that Mark can muster, then by all means look into what Mark offers. If you
are looking for the cheap way out (ie. not in the budget), with some help
from your friends (not insinuating that Mark isn't your friend, at all),, or
you want to contribute (sweat equity), then an open source method may work
and might be fun.
I do not begrudge Mark his due (I program for a living also) only that it is
not in the budget of some chapters whose needs are the same.
Chris
On Wed May 16 2007, Mark Virtue so notably scribed:
>
> Chris, I have already written such a system. I have developed a
> PHP/MySQL content-management website solution specifically for singing
> choruses. I originally wrote it for my own chorus, and then realised
> that other choruses may be able to benefit from the same features. I
> had written it in such a way that it was easily reusable for other
> choruses (by simply changing the template, the style sheet, the chorus
> name, etc).
>
<snip advertisement>>
> Cheers from Sydney, Australia,
>
> Mark.
>
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User
[Non-text portions of this message have been removed]
Mark,
I know of your product and probably should have mentioned it.
I also knew that you do charge for it and that makes it not an option for some
choruses, although I think it is a great price for what it does (sight
unseen)(5x that amount is pretty typical).
So let me say it this way, if you want a ready product with all of the support
that Mark can muster, then by all means look into what Mark offers. If you
are looking for the cheap way out (ie. not in the budget), with some help
from your friends (not insinuating that Mark isn't your friend, at all),, or
you want to contribute (sweat equity), then an open source method may work
and might be fun.
I do not begrudge Mark his due (I program for a living also) only that it is
not in the budget of some chapters whose needs are the same.
Chris
On Wed May 16 2007, Mark Virtue so notably scribed:
>
> Chris, I have already written such a system. I have developed a
> PHP/MySQL content-management website solution specifically for singing
> choruses. I originally wrote it for my own chorus, and then realised
> that other choruses may be able to benefit from the same features. I
> had written it in such a way that it was easily reusable for other
> choruses (by simply changing the template, the style sheet, the chorus
> name, etc).
>
<snip advertisement>>
> Cheers from Sydney, Australia,
>
> Mark.
>
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User
--- In BbshopWebGuild@yahoogroups.com, Christopher J Pomasl <pomasl@...>
wrote:
>
> Would any of you be interested in an OpenSource cooperative to design
a robust
> members-only that could be generic enough for everyone? A cooperative
and
> open design could help alleviate the time issues and could help weed
out any
> design flaws.
(Forgive me if this comes across as an advertisement, but here goes....)
Chris, I have already written such a system. I have developed a
PHP/MySQL content-management website solution specifically for singing
choruses. I originally wrote it for my own chorus, and then realised
that other choruses may be able to benefit from the same features. I
had written it in such a way that it was easily reusable for other
choruses (by simply changing the template, the style sheet, the chorus
name, etc).
I now have used this system to build sites for 6 Barbershop choruses, 2
SAI choruses, 2 SATB choirs, 2 Regions and 1 quartet, in the United
States, Canada and Australia. I'm currently in discussions with 3 more
choruses.
My system is completely secure and supports:
* Customisable Membership database, including photographs
* Separate login for each member
* Event calendar (both public and members-only), with email
notifications of new events to all members
* Members can post files and other comments to a chorus Bulletin
Board
* Songs database, including sheet music, MP3 and MIDI learning
tapes, and samples of the chorus singing the song
* Quartets (including photos and sample tracks)
* Photo Galleries
* Attendance register, with graphs by event and by member
* Assessment system (who has "passed" what song)
* Links database
* Suggestion Box
* Committee meeting minutes
* Guestbook
* Sending out emails "branded" with the chorus's logo, colour scheme,
etc
* Integrated chorus mailing list
... and of course the editing of the text on any of the various
non-data-driven website pages.
All of this can be maintained by any member of the chorus - no technical
expertise required. Using this system kind of eliminates the need for a
chorus webmaster (so I guess I'm a bit of an idiot posting this message
to this group!). All content is maintained by the members themselves.
Each member with an area of responsibility in the chorus (VP Music,
Event coordinator, Membership manager, etc) is given permission to
manage certain areas of the site.
Downsides:
* It doesn't support the Society's login service (has this been
discontinued?)
* It's not open source, or even documented. Any developer would have
a very long and steep learning curve to start creating new sites with my
system (but once they'd learned it, a complete new site can be created
in just a few hours)
Further info is on my website:
http://www.virtualcreations.com.au/chorus.htm
<http://www.virtualcreations.com.au/chorus.htm> and
http://www.virtualcreations.com.au/chorfeats.htm
<http://www.virtualcreations.com.au/chorfeats.htm>
And yes, I do charge choruses for this. I typically charge around $700
for a standard site, plus $100 per year support. Hosting is extra (I
provide that too). I do content-managed websites for a living. I
typically charge about 5 times that amount for a commercial site with a
similar list of features. Giving such a discount to the BBS/SAI
community is my way of contributing.
I hope no-one minds me posting this info here. I figured you guys might
be interested to know that someone out there is creating sites for
multiple choruses.
Cheers from Sydney, Australia,
Mark.
[Non-text portions of this message have been removed]
Bruce,
I have a suggestion for your issue with direct access to files. I use
Joomla for our web site also. I manage our documents with the Joomla
component, DocMan. All the files go in a single directory which can be
placed outside your web tree (basically in a sister directory to your main
web site). No one can get to them directly that way. Then you use the
access system to allow only members to see them.
Or, perhaps, I'm missing your real problem.
-Nick Aiuto
nick@...
-----Original Message-----
From: BbshopWebGuild@yahoogroups.com
[mailto:BbshopWebGuild@yahoogroups.com]On Behalf Of Bruce Sellnow
Sent: Wednesday, May 16, 2007 1:53 PM
To: BbshopWebGuild@yahoogroups.com
Subject: Re: [BbshopWebGuild] Portals Anyone?
I will second that. Our chorus is currently using a CMS (Joomla) written
in PHP. Although it is very "user friendly" to allow multiple authors and
publishers who can own and produce web content for areas in which they are
responsible, it does not provide true security such as HTAccess would. It's
more along the lines of security by obscurity. We've added 'index.html'
files to all the subdirectories to prevent 'browsing', but it does not
prevent direct links to files being given out by our members or admin teams.
Our preferred method is to give them a 'roadmap' to follow: (From the Main
Menu, click Information-Downloads-Call Sheets, ...etc..) BUT, it still
happens... In those cases, there is no login required to access the file.
- - - - - - - - - - - - - - - - -
Bruce Sellnow
bruce07@...
----- Original Message -----
From: Rod Rodrigues
To: BbshopWebGuild@yahoogroups.com
Sent: Wednesday, May 16, 2007 10:19 AM
Subject: RE: [BbshopWebGuild] Portals Anyone?
Guilders:
Is there anyone who has constructed a web site on the subject of Member
Only
sits and requisites? Here's why I ask.
When we had the Web Service available from BHS, all we got back was a yeh
or
nay, essentially. And I believe that most chapters using that did so at
the
check-in but then if they were members, they were directed to an HTML
page.
That web page was searchable, and worse, anyone could l ink directly intop
that page; the logic to constantly check credentials was not in place and
could not be in place with HTML pages. This leaves you wide open.
We even had an incident where an Officer sent out emails telling people
NOT
to log in - he gave them a link directly into the page so that they would
not have to log in.
Chapters need to be educated about Member Logins and their use.
Unfortunately, many chapters may not have the programming talent available
for a true member only site.
Is there a BHS publication on this issue? Is there a web page somewhere on
somebody's server?
[Non-text portions of this message have been removed]
[Non-text portions of this message have been removed]
[Non-text portions of this message have been removed]
I don't know if this will change once Aptify goes live to produce the online
roster but I have a script that updates my DB from the CSV.
See below.....it gets long and hopefully your email browse doesn't choke.....
On Wed May 16 2007, Bruce Sellnow so notably scribed:
> RE: Open Source Cooperative
>
> You definitely have support for this concept from the new chapter over here
> in Silicon Valley. We've got no shortage of geeks in the ranks of our
> chapter here in the Bay Area, maybe even some PHP programmers. With 175
> chapter members (read: 175 registered users on our members site...) I have
> explicit need for better security and database management. Automating the
> synchronization of this list with the Aptify database would be monumental
> for me. Time spent working on the project would be the huge barrier. But
> cooperating together towards a common solution would certainly produce
> results.
>
> Bruce Sellnow
> CIO - Voices In Harmony
> bsellnow@...
>
<HTML>
<HEAD>
<title>Mile High Roster</title>
</HEAD>
<BODY>
<?php
/* Note: Input comes from the Chapter Roster from SPEBSQSA. Save the CSV file
(link at top of page)
with the name roster.csv. Place file in the utility folder of
mhtest. No further editting is required.
Run the script first with the ?test=yes parameter to make sure nothing
changed
drastically enough to break the script.
Once verified, run the script without the test parameter three times.
1) Updates all member information adds new members
2) Updates new members' passwords due to the use of the SOR member
number in the hash
3) Make sure no other updates are processed.
*/
error_reporting(E_ALL);
function getmember(&$inmember, &$fields)
// Populate the member array with the info from this member
{
if (isset($_GET['test'])) {echo count($inmember)."<BR>";}
for ($i=0; $i<count($fields); $i++)
{
$field = $fields[$i];
$element = str_replace('\"','',$inmember[$i]);
if (isset($_GET['test'])) {echo "$field = $element <BR>\n";}
$member[$field] = $element;
}
echo "<P>";
return $member;
}
function findbyname ($dblink, &$member)
// The member was not found by member number. See if they were added manually
by the Member VP.
{
global $RosterSQLbase;
$RosterSQL = $RosterSQLbase ;
$RosterSQL .= " where RST_LastName = '" ;
$RosterSQL .= $member['LastName'] ;
$RosterSQL .= "'" ;
$RosterSQL .= " and RST_FirstName = '" ;
$RosterSQL .= $member['FirstName'] ;
$RosterSQL .= "'" ;
$RosterSQL .= " and RST_SigOther = '" ;
$RosterSQL .= $member['SpouseFirst'] ;
$RosterSQL .= "'" ;
$result = mysql_query ($RosterSQL, $dblink)
or die ("Query1 failed");
return $meta = mysql_fetch_object ($result);
}
function insertmember ($dblink, $member)
// The member was not found, add a new member.
{
// echo "Inserting ".$member['MemberNumber']."to Roster";
$RosterSQL = "INSERT into MH_Roster" ;
$RosterSQL .= " Values ( NULL,'" ; // RST_Number
(generated automatically)
$RosterSQL .= $member['LastName'] ."','" ; // RST_LastName
$RosterSQL .= $member['FirstName'] ."'," ; // RST_FirstName
$RosterSQL .= "NULL,'" ; // RST_Midinit
$RosterSQL .= $member['Nickname'] ."'," ; // RST_NickName
$RosterSQL .= "'U'," ; // RST_Voice
$RosterSQL .= "'M'," ; // RST_Type
$RosterSQL .= "'A','" ; // RST_Status
$RosterSQL .= $member['Address2'] ."','" ; // RST_Address1
$RosterSQL .= $member['Address1'] ."','" ; // RST_Address2
$RosterSQL .= $member['City'] ."','" ; // RST_City
$RosterSQL .= $member['State'] ."','" ; // RST_State
$RosterSQL .= $member['ZipPC'] ."','" ; // RST_ZipCode
$RosterSQL .= $member['SpouseFirst'] ."'," ; // RST_SigOther
if ($member['HomePhone'] == '0--0') // RST_HomePhone
{$RosterSQL .= "NULL,";}
else
{$RosterSQL .= "'".$member['HomePhone']."',";}
if ($member['WorkPhone'] == '0--0') // RST_WorkPhone
{$RosterSQL .= "NULL,";}
else
{$RosterSQL .= "'".$member['WorkPhone']."',";}
$RosterSQL .= "NULL," ; // RST_CellPhone
if ($member['Fax'] == '0--0') // RST_Fax
{$RosterSQL .= "NULL,'";}
else
{$RosterSQL .= "'".$member['Fax'] ."','";}
$RosterSQL .= $member['Email'] ."'," ; // RST_Email1
$RosterSQL .= "NULL," ; // RST_Email2
$RosterSQL .= "NULL," ; // RST_WebID
$RosterSQL .= "NULL,'" ; // RST_Password
$workdate = date("Y")."-".str_replace("/", "-",
$member['BirthDate']) ;
$RosterSQL .= $workdate ."'," ; // RST_DOB
$RosterSQL .= "NULL,'" ; // RST_Anniversary
$workdate = substr($member['ChapterExpiration'], 0,
4)."-" ;
$workdate.= substr($member['ChapterExpiration'], 4,
2)."-" ;
$workdate.= substr($member['ChapterExpiration'], 6,
2) ;
$RosterSQL .= $workdate ."','" ; // RST_Chapter_Date
$workdate = substr($member['SocietyExpiration'], 0,
4)."-" ;
$workdate.= substr($member['SocietyExpiration'], 4,
2)."-" ;
$workdate.= substr($member['SocietyExpiration'], 6,
2) ;
$RosterSQL .= $workdate ."','" ; // RST_SPEB_Date
$RosterSQL .= $member['MemberNumber'] ."'," ; // RST_SPEBSQSA_Num
$RosterSQL .= $member['YearsOfService'] ."," ; // RST_SPEBSQSA_Yrs
$RosterSQL .= "NULL," ; // RST_NameTag
$RosterSQL .= "NULL," ; // RST_Sponser
$RosterSQL .= "NULL," ; // RST_Prev_Chapter
$RosterSQL .= "NULL," ; // RST_Heard_Of
$RosterSQL .= "NULL," ; // RST_Talent_1
$RosterSQL .= "NULL," ; // RST_Talent_2
$RosterSQL .= "NULL," ; // RST_Talent_3
$RosterSQL .= "NULL," ; // RST_Occ_Code
$RosterSQL .= "NULL," ; // RST_To_Be_Member
$RosterSQL .= "NULL," ; // RST_Join_Maillist
$RosterSQL .= "NULL)" ; // RST_Picture_File
echo $RosterSQL.";<P>\n";
if (!isset($_GET['test']))
{
$result = mysql_query ($RosterSQL, $dblink) ;
echo mysql_error();
if (!$result) {die("Insert error");}
}
return true;
}
function updatemember ($dblink, $member, $meta)
// The member was found, check their data against the database and update if
different.
{
$comma = $passchange = false;
$RosterSQL = "UPDATE MH_Roster SET " ;
if (stripslashes($member['LastName']) <> $meta->RST_LastName)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_LastName = '".$member['LastName']."'" ;
$comma = $passchange = true;
$UseLastName = $member['LastName'] ;
}
else
{
$UseLastName = $meta->RST_LastName;
}
if (stripslashes($member['FirstName']) <> $meta->RST_FirstName)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_FirstName = '".$member['FirstName']."'" ;
$comma = $passchange = true;
$UseFirstName = $member['FirstName'] ;
}
else
{
$UseFirstName = $meta->RST_FirstName;
}
if (stripslashes($member['Nickname']) <> $meta->RST_NickName)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_NickName = '".$member['Nickname']."'" ;
$comma = true;
}
if (stripslashes($member['SpouseFirst']) <> $meta->RST_SigOther)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_SigOther = '".$member['SpouseFirst']."'" ;
$comma = true;
}
if (($member['HomePhone'] == '0--0') or ($member['HomePhone'] == NULL))
{
if ($meta->RST_HomePhone <> NULL)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_HomePhone = '".$member['HomePhone']."'" ;
$comma = true;
}
}
else
{
if ($member['HomePhone'] <> $meta->RST_HomePhone)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_HomePhone = '".$member['HomePhone']."'" ;
$comma = true;
}
}
if (($member['WorkPhone'] == '0--0') or ($member['WorkPhone'] == NULL))
{
if ($meta->RST_WorkPhone <> NULL)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_WorkPhone = '".$member['WorkPhone']."'" ;
$comma = true;
}
}
else
{
if ($member['WorkPhone'] <> $meta->RST_WorkPhone)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_WorkPhone = '".$member['WorkPhone']."'" ;
$comma = true;
}
}
if (($member['Fax'] == '0--0') or ($member['Fax'] == NULL))
{
if ($meta->RST_Fax <> NULL)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Fax = '".$member['Fax']."'" ;
$comma = true;
}
}
else
{
if ($member['Fax'] <> $meta->RST_Fax)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Fax = '".$member['Fax']."'" ;
$comma = true;
}
}
if (($member['Email'] <> $meta->RST_Email1)and($member['Email'] <>
$meta->RST_Email2))
{
if (!isset($member['Email'])and(($meta->RST_Email2
== '')or($meta->RST_Email2 = NULL)) )
{if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Email1 = NULL, " ;
$RosterSQL.="RST_Email2 = '".$meta->RST_Email1."'" ;
$comma = true;
}
else
{if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Email1 = '".$member['Email']."'" ;
$comma = true;
}
}
if ($meta->RST_DOB == '')
{
$workdate = date("Y")."-".str_replace("/", "-",
$member['BirthDate']) ;
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_DOB = '".$workdate."'" ;
$comma = true;
}
$workdate = str_replace("-", '', $meta->RST_Chapter_Date);
if ($member['ChapterExpiration'] <> $workdate)
{
$workdate = substr($member['ChapterExpiration'], 0, 4)."-" ;
$workdate.= substr($member['ChapterExpiration'], 4,
2)."-" ;
$workdate.= substr($member['ChapterExpiration'], 6,
2) ;
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Chapter_Date = '".$workdate."'" ;
$comma = true;
}
$workdate = str_replace("-", '', $meta->RST_SPEB_Date);
if ($member['SocietyExpiration'] <> $workdate)
{
$workdate = substr($member['SocietyExpiration'], 0, 4)."-" ;
$workdate.= substr($member['SocietyExpiration'], 4,
2)."-" ;
$workdate.= substr($member['SocietyExpiration'], 6,
2) ;
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_SPEB_Date = '".$workdate."'" ;
$comma = true;
}
if ($meta->RST_SPEBSQSA_Num == '')
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_SPEBSQSA_Num = '".
$member['MemberNumber']."'" ;
$comma = true;
}
if ($member['YearsOfService'] <> $meta->RST_SPEBSQSA_Yrs)
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_SPEBSQSA_Yrs = '".$member['YearsOfService']."'" ;
$comma = true;
}
if ($meta->RST_Type <> 'M')
{
if ($comma) {$RosterSQL.=", ";}
$RosterSQL.="RST_Type = 'M'" ;
$comma = true;
}
if (($meta->RST_WebID == '')or($meta->RST_WebID == NULL))
{
if ($comma) {$RosterSQL.=", ";}
$NewWebID = strtolower(str_replace(' ','',substr($UseFirstName,0,1).
$UseLastName));
$RosterSQL.="RST_WebID = '".$NewWebID."'" ;
$comma = true;
}
$RosterSQL .= " WHERE RST_Number = " ;
$RosterSQL .= $meta->RST_Number ;
if ($comma)
{
echo $RosterSQL.";<P>\n";
if (!isset($_GET['test']))
{
$result = mysql_query ($RosterSQL, $dblink) ;
echo mysql_error();
if (!$result) {die("Update error");}
}
}
else
{
echo "# No updates needed<BR>\n";
}
}
//echo "hello";
include ('ofnidb.jnk');
// Open the roster dataset...CSV format with header.
$rcsv = fopen ("roster.csv","r")
or die ("Could not open dataset");
// Get the first record and parse the CSV record into the fields array.
$fields = fgetcsv ($rcsv,1000,",");
$memcount = 0;
//echo $instring;
//echo count($inlines)."<br>\n";
while ($inmember = fgetcsv ($rcsv,1000,",") )
// Get each CSV record into the inmember array.
{
// Parse the member record into the members array using the current record
and the header record.
if (!$members[] = getmember($inmember, $fields)) {break;} //Get the next
member
$memcount++;
}
$dblink = mysql_connect ($host, $user, $password)
or die ("Could not connect to host") ;
if (!mysql_select_db($database, $dblink))
{
die ("Could not connect to database");
}
//echo $memcount;
$RosterSQLbase = "Select" ;
$RosterSQLbase .= " RST_Number" ;
$RosterSQLbase .= ",RST_LastName" ;
$RosterSQLbase .= ",RST_FirstName" ;
$RosterSQLbase .= ",RST_NickName" ;
$RosterSQLbase .= ",RST_Type" ;
$RosterSQLbase .= ",RST_Address1" ;
$RosterSQLbase .= ",RST_Address2" ;
$RosterSQLbase .= ",RST_City" ;
$RosterSQLbase .= ",RST_State" ;
$RosterSQLbase .= ",RST_ZipCode" ;
$RosterSQLbase .= ",RST_SigOther" ;
$RosterSQLbase .= ",RST_HomePhone" ;
$RosterSQLbase .= ",RST_WorkPhone" ;
$RosterSQLbase .= ",RST_Fax" ;
$RosterSQLbase .= ",RST_Email1" ;
$RosterSQLbase .= ",RST_Email2" ;
$RosterSQLbase .= ",RST_WebID" ;
$RosterSQLbase .= ",RST_DOB" ;
$RosterSQLbase .= ",RST_Chapter_Date" ;
$RosterSQLbase .= ",RST_SPEB_Date" ;
$RosterSQLbase .= ",RST_SPEBSQSA_Num" ;
$RosterSQLbase .= ",RST_SPEBSQSA_Yrs" ;
$RosterSQLbase .= " from MH_Roster" ;
// Step through the member array to match members with their DB record.
foreach ($members as $member)
{
//echo '<BR>'.$member['MemberNumber'] ;
$RosterSQL = $RosterSQLbase ;
$RosterSQL .= " where RST_SPEBSQSA_Num = '" ;
$RosterSQL .= $member['MemberNumber'] ;
$RosterSQL .= "'" ;
if (!$result = mysql_query ($RosterSQL, $dblink)) {die("Query3
error".mysql_error());}
// Save the member numbers of active members.
$SPEBnums[] = $member['MemberNumber'];
// Attempt to fetch the members DB record.
if (!$meta = mysql_fetch_object ($result))
{
// Not found, try to find them by name.
echo $member['MemberNumber']." was not found on the database<BR>\n";
echo "Attempting to find based on name...<BR>\n";
if ($meta = findbyname ($dblink, $member))
{
// The member was found by name, update data.
echo $member['Lastname']." was found, Verifying data.<BR>\n";
updatemember ($dblink, $member, $meta);
}
else
{
// The member was not found, add a new member.
echo $member['Lastname']." was not found, Inserting new
member.<BR>\n";
insertmember ($dblink, $member);
}
}
else
{
// The member was found by SPEB number, update data.
echo $member['MemberNumber']." was found, Verifying data.<BR>\n";
updatemember ($dblink, $member, $meta);
}
}
// For any member that was not in the CSV, set their membership type
to "Former".
$RosterSQL = "Update MH_Roster" ;
$RosterSQL.= " Set RST_Type = 'F'" ;
$RosterSQL.= " Where RST_Type = 'M'" ;
$RosterSQL.= " and RST_SPEBSQSA_Num not in (" ;
$comma = false;
foreach ($SPEBnums as $SPEBnum)
{
if ($comma){$RosterSQL.= ",";}
$RosterSQL.= $SPEBnum;
$comma = true;
}
$RosterSQL.= ")";
echo $RosterSQL,";<P>\n";
if (!isset($_GET['test']))
{
$result = mysql_query ($RosterSQL, $dblink) ;
echo mysql_error();
if (!$result) {die("Update formers error");}
echo "# Rows Affected: ",mysql_affected_rows($dblink);
}
echo "<P># Done writing ";
?>
</BODY>
</HTML>
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User
does your web site have the same old, tired copyright notice?
here's one with a bit of flair that might get you working up
something more memorable:
http://www.joelane.com/copyright-2006.php
Getting back to BASSics...
KTWWS! & HTW!
Christopher
Have you been to the Sunshine District MegaStore?
http://www.cafepress.com/sunshinebbs
Yahoo ID: cbaker84
ICQ #7176473
RE: Open Source Cooperative
You definitely have support for this concept from the new chapter over here in
Silicon Valley. We've got no shortage of geeks in the ranks of our chapter here
in the Bay Area, maybe even some PHP programmers. With 175 chapter members
(read: 175 registered users on our members site...) I have explicit need for
better security and database management. Automating the synchronization of this
list with the Aptify database would be monumental for me. Time spent working on
the project would be the huge barrier. But cooperating together towards a common
solution would certainly produce results.
Bruce Sellnow
CIO - Voices In Harmony
bsellnow@...
----- Original Message -----
From: Christopher J Pomasl
To: BbshopWebGuild@yahoogroups.com
Sent: Wednesday, May 16, 2007 4:29 PM
Subject: Re: [BbshopWebGuild] Portals Anyone?
Written in PHP.
What I did is create a script the checks for a current logon and if the user
is not logged in, or has been inactive for more than x seconds (10 minutes),
then it splashes up the login screen. So new users get the login and absent
users re-get the login.
Then I call this script in every page on the member's site. Each page starts
and ends with the menu header and a trailer, each with their own scripts and
menu script actually calls the login script. So in order to get the standard
menu on a page, you also get the login. The login script also resets the ten
minute timer.
The ?downside? is that there are no HTML pages, but the upside is that the
deign is such that the template includes the header and footer and the rest
is content....no HTML fluff in each page.
This system has been in a hold status for quite a while (ran out of time to
devote to it) and includes a full security system that is driven by a given
user's VIP codes (PRES, VPMUS, VPMEM, WEBM, etc) . For secured pages, just
code who gets access and error message everyone else. It was close to being
implementable but not quite. I have a bunch of other stuff that never got
out of design into coding phase.
If you want to look at snippets, I can provide.
It uses LAMP technology, Linux, Apache, MySQL, PHP.
I am the roster keeper here and most of the functions that are written are
roster driven.
The designed but not coded components are file uploads and display, Event and
calendaring, attendance requirements, etc.
Would any of you be interested in an OpenSource cooperative to design a robust
members-only that could be generic enough for everyone? A cooperative and
open design could help alleviate the time issues and could help weed out any
design flaws.
Chris
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User
[Non-text portions of this message have been removed]
Written in PHP.
What I did is create a script the checks for a current logon and if the user
is not logged in, or has been inactive for more than x seconds (10 minutes),
then it splashes up the login screen. So new users get the login and absent
users re-get the login.
Then I call this script in every page on the member's site. Each page starts
and ends with the menu header and a trailer, each with their own scripts and
menu script actually calls the login script. So in order to get the standard
menu on a page, you also get the login. The login script also resets the ten
minute timer.
The ?downside? is that there are no HTML pages, but the upside is that the
deign is such that the template includes the header and footer and the rest
is content....no HTML fluff in each page.
This system has been in a hold status for quite a while (ran out of time to
devote to it) and includes a full security system that is driven by a given
user's VIP codes (PRES, VPMUS, VPMEM, WEBM, etc) . For secured pages, just
code who gets access and error message everyone else. It was close to being
implementable but not quite. I have a bunch of other stuff that never got
out of design into coding phase.
If you want to look at snippets, I can provide.
It uses LAMP technology, Linux, Apache, MySQL, PHP.
I am the roster keeper here and most of the functions that are written are
roster driven.
The designed but not coded components are file uploads and display, Event and
calendaring, attendance requirements, etc.
Would any of you be interested in an OpenSource cooperative to design a robust
members-only that could be generic enough for everyone? A cooperative and
open design could help alleviate the time issues and could help weed out any
design flaws.
Chris
--
Christopher J Pomasl
Senior Software Engineer, Computer Associates
Always remember, you are unique...just like everyone else.
IBM Certified, DB2 Z/OS V7 Administration, User