Index: THEME.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views_rotator/Attic/THEME.txt,v
retrieving revision 1.1.2.4
diff -u -p -r1.1.2.4 THEME.txt
--- THEME.txt	13 Sep 2008 18:42:12 -0000	1.1.2.4
+++ THEME.txt	6 Jul 2009 18:37:00 -0000
@@ -16,7 +16,8 @@ The Views Rotator module provides the fo
 - interval_time: The time a single element is displayed for (default is 5 seconds)
 - transition_time: The amount of time the crossfade takes (default is .5 seconds)
 - mouseover_pause: Whether or not to pause rotation when the mouse is over the rotating region. 1 is on, 0 is off (default)
-- back_next_buttons: Whether to display back and next buttons when the mouse is over the region. 1 is on, 0 is off (default)
+- hover_back_next_buttons: Whether to display back and next buttons when the mouse is over the region. 1 is on, 0 is off (default)
+- back_next_buttons: Whether to display back and next buttons. 1 is on, 0 is off (default) Shows #s to be able to click to a specific image & Buttons
 - area_height: The height of the rotating region. (default is 'auto')
 
 These options are configured in the theme functions. To override them the theme functions need to be overridden in your
@@ -40,7 +41,8 @@ function phptemplate_views_rotator_node(
   $options['interval_time'] = 5;
   $options['transition_time'] = 1;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
@@ -75,7 +77,8 @@ function phptemplate_views_rotator_tease
   $options['interval_time'] = 5;
   $options['transition_time'] = 1;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
@@ -110,7 +113,8 @@ function phptemplate_views_rotator_item(
   $options['interval_time'] = 5;
   $options['transition_time'] = 1;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
@@ -157,7 +161,8 @@ function phptemplate_views_rotator_item(
   $options['interval_time'] = 5;
   $options['transition_time'] = .5;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
Index: views-rotator-nohover.css
===================================================================
RCS file: views-rotator-nohover.css
diff -N views-rotator-nohover.css
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ views-rotator-nohover.css	6 Jul 2009 18:37:00 -0000
@@ -0,0 +1,57 @@
+
+.views-rotator-cover {
+  background-color: #000;
+  width: 100%;
+  height: 25px;
+  padding: 0 5px 0 15px;
+  letter-spacing: 8px;
+  color: #fff;
+  font-size: 15px;
+  font-weight: bold;
+  opacity:0.7;
+  -moz-opacity:0.7;
+  filter: alpha(opacity=70);
+  position: relative;
+  top: 388px;
+  left: 0;
+  z-index: 1000;
+}
+
+.views-rotator-prev {
+  float: left;
+  background: url(images/prev.jpg) left 50% no-repeat;
+}
+
+.views-rotator-prev a {
+  float: left;
+  width: 30px;
+}
+
+.views-rotator-nums {
+  float: left;
+  padding: 0 5px 0 15px;
+  cursor: pointer;
+}
+
+.views-rotator-nums a {
+  cursor: pointer;
+  text-decoration: none;
+}
+
+.views-rotator-next a {
+  width: 30px;
+  background: transparent;
+}
+
+.views-rotator-next {
+  float: left;
+  background: url(images/next.jpg) right 50% no-repeat;
+}
+
+.views-rotator-prev,
+.views-rotator-next {
+  height: 15px;
+  width: 20px;
+  padding-top: 7px;
+  cursor: pointer;
+}
\ No newline at end of file
Index: views-rotator.css
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views_rotator/views-rotator.css,v
retrieving revision 1.2.2.4
diff -u -p -r1.2.2.4 views-rotator.css
--- views-rotator.css	28 Aug 2008 15:44:22 -0000	1.2.2.4
+++ views-rotator.css	6 Jul 2009 18:37:00 -0000
@@ -13,11 +13,11 @@ div.views-rotator-next a {
   height: 0;
 }
 
-div.views-rotator-prev a {
+div.views-rotator-prev-hover a {
   background: url(images/prev.jpg) left 50% no-repeat;
 }
 
-div.views-rotator-next a {
+div.views-rotator-next-hover a {
   background: url(images/next.jpg) right 50% no-repeat;
 }
 
@@ -28,6 +28,7 @@ div.views-rotator-next-hover a {
   margin: 10px;
   position: absolute;
   z-index: 1000;
+  cursor: pointer;
 }
 
 div.views-rotator-prev-hover a {
Index: views-rotator.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views_rotator/views-rotator.js,v
retrieving revision 1.3.2.4
diff -u -p -r1.3.2.4 views-rotator.js
--- views-rotator.js	13 Sep 2008 18:42:12 -0000	1.3.2.4
+++ views-rotator.js	6 Jul 2009 18:37:00 -0000
@@ -17,6 +17,7 @@
       'vclass':             'views_rotator',
       'children':           null,
       'mouseover_pause':    0,
+      'hover_back_next_buttons':  0,
       'back_next_buttons':  0
     };
     if (options)
@@ -47,7 +48,7 @@
           info[settings.id].timeoutID = setTimeout((function() {
             $.views_rotator.next(elements, settings);
           }), settings.interval_time);
-          if (settings.back_next_buttons == 1) {
+          if (settings.hover_back_next_buttons == 1) {
             $('.' + settings.id + ' .views-rotator-prev').removeClass('views-rotator-prev-hover');
             $('.' + settings.id + ' .views-rotator-next').removeClass('views-rotator-next-hover');
           }
@@ -56,13 +57,13 @@
             clearTimeout(info[settings.id].timeoutID);
             delete info[settings.id].timeoutID;
           }
-          if (settings.back_next_buttons == 1) {
+          if (settings.hover_back_next_buttons == 1) {
             $('.' + settings.id + ' .views-rotator-prev').addClass('views-rotator-prev-hover');
             $('.' + settings.id + ' .views-rotator-next').addClass('views-rotator-next-hover');
           }
         });
       }
-      else if (settings.back_next_buttons == 1) {
+      else if (settings.hover_back_next_buttons == 1) {
         $('.' + settings.id).mouseover(function() {
           $('.' + settings.id + ' .views-rotator-prev').addClass('views-rotator-prev-hover');
           $('.' + settings.id + ' .views-rotator-next').addClass('views-rotator-next-hover');
@@ -71,9 +72,59 @@
           $('.' + settings.id + ' .views-rotator-next').removeClass('views-rotator-next-hover');
         });
       }
-      if (settings.back_next_buttons == 1) {
+      if (settings.back_next_buttons == 1 || settings.hover_back_next_buttons == 1) {
         $(container).parent().css('height', settings.area_height);
-        $('.' + settings.id).prepend('<div class="views-rotator-prev"><a></a></div><div class="views-rotator-next"><a></a></div>');
+        var nums = '';
+        var cover = '';
+        // Set the number of pictures to display their numbers.
+        if(settings.back_next_buttons == 1) {
+          nums += '<div class="views-rotator-nums">';
+          for ( var i = 1; i < (elements.length+1); i++ ) {
+            nums += "<span class='"+i+"'><a>"+i+"</a></span>";
+          }
+          nums += '</div>';
+          cover += 'class="views-rotator-cover"';
+        }
+        $('.' + settings.id).prepend('<div '+cover+'><div class="views-rotator-prev"><a>&nbsp;</a></div>'+nums+'<div class="views-rotator-next"><a>&nbsp;</a></div></div>');
+        if (settings.back_next_buttons == 1) {
+          for ( i = 0; i < elements.length; i++ ) {
+            j = i+1;
+            $('.' + settings.id + ' .'+j).click(function() {
+              // Set image user wants to view.
+              var current = $(this).children("a").text()-1;
+              var last = info[settings.id].last;
+              // Fix IE6/Cleartype bug.
+              if (ie6) {
+                $.views_rotator.clearTypeFix($(elements[last]));
+                $.views_rotator.clearTypeFix($(elements[current]));
+              }
+              $(elements[last]).fadeOut(settings.transition_time, function() {
+                // Work around IE/cleartype bug.
+                if(this.style.removeAttribute){
+                  this.style.removeAttribute('filter');
+                }
+              });
+              $(elements[current]).fadeIn(settings.transition_time, function() {
+                // Work around IE/cleartype bug.
+                if(this.style.removeAttribute){
+                  this.style.removeAttribute('filter');
+                }
+              });
+              if ((current + 1) < elements.length) {
+                current = current + 1;
+                last = current - 1;
+              } else {
+                current = 0;
+                last = elements.length - 1;
+              }
+              info[settings.id].current = current;
+              info[settings.id].last = last;
+              
+              // Clear timeout.
+              clearTimeout(info[settings.id].timeoutID);
+            });
+          }
+        }
         $('.' + settings.id + ' .views-rotator-prev a').click(function() {
           var current = info[settings.id].current;
           var last = info[settings.id].last;
@@ -82,19 +133,19 @@
           } else {
             current = last - 1;
           }
-          // Fix IE6/Cleartype bug
+          // Fix IE6/Cleartype bug.
           if (ie6) {
             $.views_rotator.clearTypeFix($(elements[last]));
             $.views_rotator.clearTypeFix($(elements[current]));
           }
           $(elements[last]).fadeOut(settings.transition_time, function() {
-            // Work around IE/cleartype bug
+            // Work around IE/cleartype bug.
             if(this.style.removeAttribute){
               this.style.removeAttribute('filter');
             }
           });
           $(elements[current]).fadeIn(settings.transition_time, function() {
-            // Work around IE/cleartype bug
+            // Work around IE/cleartype bug.
             if(this.style.removeAttribute){
               this.style.removeAttribute('filter');
             }
@@ -108,23 +159,28 @@
           }
           info[settings.id].current = current;
           info[settings.id].last = last;
+          
+          // Set timeout.
+          info[settings.id].timeoutID = setTimeout((function() {
+            $.views_rotator.next(elements, settings);
+          }), settings.interval_time);
         });
         $('.' + settings.id + ' .views-rotator-next a').click(function() {
           var current = info[settings.id].current;
           var last = info[settings.id].last;
-          // Fix IE6/Cleartype bug
+          // Fix IE6/Cleartype bug.
           if (ie6) {
             $.views_rotator.clearTypeFix($(elements[last]));
             $.views_rotator.clearTypeFix($(elements[current]));
           }
           $(elements[last]).fadeOut(settings.transition_time, function() {
-            // Work around IE/cleartype bug
+            // Work around IE/cleartype bug.
             if(this.style.removeAttribute){
               this.style.removeAttribute('filter');
             }
           });
           $(elements[current]).fadeIn(settings.transition_time, function() {
-            // Work around IE/cleartype bug
+            // Work around IE/cleartype bug.
             if(this.style.removeAttribute){
               this.style.removeAttribute('filter');
             }
@@ -138,6 +194,11 @@
           }
           info[settings.id].current = current;
           info[settings.id].last = last;
+          
+          // Set timeout.
+          info[settings.id].timeoutID = setTimeout((function() {
+            $.views_rotator.next(elements, settings);
+          }), settings.interval_time);
         });
       }
 		}
@@ -146,19 +207,19 @@
   $.views_rotator.next = function(elements, settings) {
     var current = info[settings.id].current;
     var last = info[settings.id].last;
-    // Fix IE6/Cleartype bug
+    // Fix IE6/Cleartype bug.
     if (ie6) {
       $.views_rotator.clearTypeFix($(elements[last]));
       $.views_rotator.clearTypeFix($(elements[current]));
     }
     $(elements[last]).fadeOut(settings.transition_time, function() {
-      // Work around IE/cleartype bug
+      // Work around IE/cleartype bug.
       if(this.style.removeAttribute){
         this.style.removeAttribute('filter');
       }
     });
     $(elements[current]).fadeIn(settings.transition_time, function() {
-			// Work around IE/cleartype bug
+      // Work around IE/cleartype bug.
       if(this.style.removeAttribute){
         this.style.removeAttribute('filter');
       }
Index: views_rotator.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views_rotator/views_rotator.module,v
retrieving revision 1.2.2.3
diff -u -p -r1.2.2.3 views_rotator.module
--- views_rotator.module	13 Sep 2008 18:42:12 -0000	1.2.2.3
+++ views_rotator.module	6 Jul 2009 18:37:00 -0000
@@ -28,7 +28,8 @@ function theme_views_rotator_node($view,
   $options['interval_time'] = 5;
   $options['transition_time'] = .5;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
@@ -63,13 +64,17 @@ function theme_views_rotator_teaser($vie
   $options['interval_time'] = 5;
   $options['transition_time'] = .5;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
   
+  if($options['back_next_buttons'] == 1) {
+    drupal_add_css(drupal_get_path('module', 'views_rotator') .'/views-rotator-nohover.css');
+  }  
   drupal_add_css(drupal_get_path('module', 'views_rotator') .'/views-rotator.css');
-  drupal_add_js(drupal_get_path('module', 'views_rotator') .'/views-rotator.min.js');
+  drupal_add_js(drupal_get_path('module', 'views_rotator') .'/views-rotator.js');
   
   $options['id'] = $views_rotator_id = 'views-rotator-'. $view->name .'-'. $view->build_type;
   $options['interval_time'] = $options['interval_time'] * 1000;
@@ -98,13 +103,17 @@ function theme_views_rotator_item($view,
   $options['interval_time'] = 5;
   $options['transition_time'] = .5;
   $options['mouseover_pause'] = 0;
-  $options['back_next_buttons'] = 0;
+  $options['hover_back_next_buttons'] = 0;
+  $options['back_next_buttons'] = 0;
   $options['area_height'] = 'auto';
   $options['auto_height'] = 1; // When this is set to 1 views rotator will attempt to detect and set the region height
   // End editable options
-  
+    
+  if($options['back_next_buttons'] == 1) {
+    drupal_add_css(drupal_get_path('module', 'views_rotator') .'/views-rotator-nohover.css');
+  }  
   drupal_add_css(drupal_get_path('module', 'views_rotator') .'/views-rotator.css');
-  drupal_add_js(drupal_get_path('module', 'views_rotator') .'/views-rotator.min.js');
+  drupal_add_js(drupal_get_path('module', 'views_rotator') .'/views-rotator.js');
   
   $options['id'] = $views_rotator_id = 'views-rotator-'. $view->name .'-'. $view->build_type;
   $options['interval_time'] = $options['interval_time'] * 1000;
@@ -128,7 +137,6 @@ function theme_views_rotator_item($view,
     if (views_rotator_display_item($views_rotator_id)) $output .= ' style="display:none;"';
     $output .= '><div class="view-item '. views_css_safe('view-item-'. $view->name) .'">'. $item ."</div></li>\n";
   }
-  
   if (!empty($output)) {
     $output = '<div class="item-list views-rotator '. $views_rotator_id .' clear-block"><ul id="'. $views_rotator_id .'">'. $output;
     $output .= '</ul></div>';
