bcm.addWindowOnload (setupGallery);
function setupGallery ()
{
var strProjectID = null;
var intFadeTimer = false;
var intOpacity = 0;
var objGallery = {
'project_5':{'id':'5', 'title':'Music Bus', 'text':'
\n
Music Bus
\n\n
Web Content management systems (CMS) are often the backbone of a website. It\'s how you create, update and publish web pages, both copy and images. A CMS needs a user-friendly interface so, with basic training, anyone can update their website.
\n
\n\n
Read more about our CMS solutions
\n\n\n \n
Service Provided
\n
\n - technical development
\n - email newsletter design
\n - email newsletter distribution management
\n - website hosting
\n - email hosting
\n
\n
'},
'project_1':{'id':'1', 'title':'Mums On Call', 'text':' \n
Mums On Call
\n\n
"When I decided to go ahead, I was given a realistic timescale and the work was always delivered on time. The testing period before going live was worked on well and even though Blue Cube were busy with other projects, I always felt my job was given full attention...."
\n
Read the full testimonial
\n
\n \n
Service Provided
\n
\n - technical development
\n- blog development
\n- customer admin panel
\n- website hosting
\n- email hosting
\n\n\n
\n
'},
'project_4':{'id':'4', 'title':'Energy Trust', 'text':' \n
Energy Trust
\n\n
"One of our aims was to rank highly on Google\'s search results...Sure enough, two days after our site launched, it was already on page one for one of our search terms - NDEA training..."
\n
Read the full testimonial
\n\n
\n \n
Service Provided
\n
\n - website design
\n - technical development
\n - content management system
\n - SEO
\n - adwords campaign
\n - course booking module
\n - protx integration
\n - logo design
\n - corporate stationery
\n - website / email hosting
\n
\n
'},
'project_3':{'id':'3', 'title':'Hello Beads', 'text':' \n
Hello Beads
\n\n
When it comes to providing an online shop and ecommerce systems, we don\'t offer a one-size-fits-all solution. For starters, some sites sell products whereas others sell services.
\n\n
Read more about our e-commerce solutions
\n
\n \n
Service Provided
\n
\n - technical development
\n - e-commerce development
\n - website hosting
\n - email hosting
\n
\n
'},
'project_2':{'id':'2', 'title':'Best Lettings', 'text':' \n
Best Lettings
\n\n
"As estate agents, our list of properties is ever changing so we needed a backoffice admin area that would allow us to easily add and remove properties when needed...I got everything I wanted from a website...and more."
\n
Read the full testimonial
\n
\n \n
Service Provided
\n
\n - website design
\n - technical development
\n - content management system
\n - bespoke property listing module
\n - logo design
\n - corporate stationery
\n - website / email hosting
\n
\n
'}
};
var objMainImageHolder = document.getElementById('featured_project_image');
var objMainImage = new Image ();
var objText = document.getElementById('featured_project_text');
var arrThumbLinks = bcm.getLinksByRel ('thumb');
objMainImage.src = '/img/featured_project/' + objGallery['project_2']['id'] + '.jpg';
objMainImage.alt = objGallery['project_2']['title'];
objMainImageHolder.appendChild (objMainImage);
objText.innerHTML = objGallery['project_2']['text'];
bcm.setElementOpacity (objMainImage, intOpacity);
bcm.setElementOpacity (objText, intOpacity);
intFadeTimer = setInterval (fadeIn, 1);
for (var i in arrThumbLinks)
{
arrThumbLinks[i].onclick = function ()
{
if (intFadeTimer != false)
return false;
// display loading image
strProjectID = 'project_' + this.id.split('_')[1];
imgNew = new Image ();
imgNew.onload = function ()
{
// clear loading image
intFadeTimer = setInterval (fadeOut, 1);
};
imgNew.src = '/img/featured_project/' + objGallery[strProjectID]['id'] + '.jpg';
return false;
}
}
function fadeOut ()
{
if (intOpacity >= 0)
{
intOpacity -= 10;
bcm.setElementOpacity (objMainImage, intOpacity);
bcm.setElementOpacity (objText, intOpacity);
}
else
{
objMainImage.src = imgNew.src;
objMainImage.alt = objGallery[strProjectID]['title'];
objText.innerHTML = objGallery[strProjectID]['text'];
clearInterval (intFadeTimer);
intFadeTimer = setInterval (fadeIn, 1);
}
}
function fadeIn ()
{
if (intOpacity < 100)
{
intOpacity += 10;
bcm.setElementOpacity (objMainImage, intOpacity);
bcm.setElementOpacity (objText, intOpacity);
}
else
{
clearInterval (intFadeTimer);
intFadeTimer = false;
}
}
}