Coding help

Hi guys, I really need your help. I am very new at programming. I want to have the sinelone effect with my LED strip. I am running 3 strips with 60 LEDs each. I want it to start with RED and finish with Purple ( Rainbow colour with comet effect). I got it to start with Red and I can't figure out a way to make end with purple. My code is below:

#include <FastLED.h>

// How many leds in your strip?
#define NUM_LEDS 60 

// For led chips like Neopixels, which have a data line, ground, and power, you just
// need to define DATA_PIN.  For led chipsets that are SPI based (four wires - data, clock,
// ground, and power), like the LPD8806, define both DATA_PIN and CLOCK_PIN
#define DATA_PIN 7
#define CLOCK_PIN 13

// Define the array of leds
CRGB leds[NUM_LEDS];

void setup() { 
	Serial.begin(57600);
	Serial.println("resetting");
	LEDS.addLeds<WS2812,DATA_PIN,BRG>(leds,NUM_LEDS);
	LEDS.setBrightness(84);
}

void fadeall() { for(int i = 0; i < NUM_LEDS; i++) { leds[i].nscale8(120); } }

void loop() { 
	uint8_t hue = 0;

	// First slide the led in one direction
	for(int i = 0; i < NUM_LEDS; i++) {
		// Set the i'th led to red 
		leds[i] = CHSV(hue++, 255, 255);
		// Show the leds
		FastLED.show(); 
		// now that we've shown the leds, reset the i'th led to black
		// leds[i] = CRGB::Black;
		fadeall();
		// Wait a little bit before we loop around and do it again
		delay(70);
	}

}

Looking forward to hear from you soon.

Without seeing the details of the library you have included, and being a bit of an Arduino noob myself, I may not be the best person to reply, but...
My guess is that the colour control will be via the section you have as follows:
leds = CHSV(hue++, 255, 255);[/color]
That would be the 'amount' of Red, Green and Blue to use for the LED. As your only really manipulation the first element, that will be why you are only using Red. To get to purple you will need full red and full blue.
As an experiment, I would suggest playing with that line to see what output you get, and then you may need some loops in the code to cycle or set the numbers up/down as per your need.
Let us know how you get on.

As your only really manipulation the first element, that will be why you are only using Red

No the CHSV takes in three parameters, that of Hue, Saturation and Value. He is only changing the Hue, but that will result in the values for red, green and blue being changed. See HSL and HSV - Wikipedia

The basic problem the OP is having is due to him only doing the hue++ 60 times because he only has 60 LEDs. This means he never gets out of the red dominated range of the HSV colour model. The hue variable need to range over 0 to 255, so the increment needs to be not one but 255/60.

Thank you. I also came to the conclusion of using the map function.

//The map function works like this:
// map(value, fromLow, fromHigh, toLow, toHigh)

//replace this line:
leds[i] = CHSV(hue++, 255, 255);

//with these lines:
uint8_t mappedHue = map(i, 0, NUM_LEDS-1, 255, 192);
leds[i] = CHSV(mappedHue, 255, 255);

Just to be clear I was not thinking of using map but using a float to increment the hue variable. Keep the hue as a float and cast the hue and increment to a byte in the call CHSV.