function Zodiac(day, sign, symbol, birthstone, quality) {
  this.day = day;
  this.sign = sign;
  this.symbol = symbol;
  this.birthstone = birthstone;
  this.quality = quality;
}

function setZodiac(day, sign, symbol, birthstone, quality) {
  myZodiac[zodiacIndex++] =
    new Zodiac(day, sign, symbol, birthstone, quality);
}

var zodiacIndex = 0;
var myZodiac = new Array();

setZodiac(20,'Αιγόκερως','η αιξ','ο γρανάτης','συμβολίζει την πίστη, τη σταθερότητα.');
setZodiac(19,'Υδροχόος','ο κομιστής Ύδατος','ο αμέθυστος','συμβολίζει την ειλικρίνεια, την γνησιότητα.');
setZodiac(
  21,'Ιχθείς','τα ψάρια','η ακουαμαρίνια, το ηλιοτρόπιο','συμβολίζουν το θάρρος, την γενναιότητα, το κουράγιο.');
setZodiac(21,'Κριός','το κριάρι','το διαμάντι','συμβολίζει την αθωότητα.');
setZodiac(21,'Ταύρος','ο ταύρος','το σμαράγδι','συμβολίζει την αγάπη, την επιτυχία, τον θρίαμβο.');
setZodiac(
  21,'Δίδυμοι','οι δίδυμοι','το μαργαριτάρι, ο αλεξανδρίτης, ο σεληνόλιθος','συμβολίζουν την υγεία.'
);
setZodiac(22,'Καρκίνος','το καβούρι','το ρουμπίνι','συμβολίζει την ικανοποίηση, την ευδαιμονία.');
setZodiac(
  22,'Λέων','το λιοντάρι','ο σαρδόνυξ','συμβολίζει την ευτυχία των παντρεμένων.');
setZodiac(22,'Παρθένος','η παρθένος','το ζαφείρι','συμβολίζει την καθαρή σκέψη.');
setZodiac(23,'Ζυγός','ο Ζυγός','ο οπάλιος, ο τουρμαλίνης ','συμβολίζουν την ελπίδα.');
setZodiac(22,'Σκορπιός','ο σκορπιός','το τοπάζι','συμβολίζει τη συζυγική πίστη, την αφοσίωση, την ακρίβεια.');
setZodiac(
  21,'Τοξότης','ο τοξότης','το τουρκουάζ, το ζιρκόνιο','συμβολίζουν την ευημέρια και καλοζωία.');

function starSign(day,month) {
  var zodiac = month;
  if (day < myZodiac[month-1].day) zodiac--
  if (zodiac==12) zodiac=0;
  return zodiac;
}

function starDateRange(day,month,year) {
  var beginYear = endYear = year;
  var beginMonth = endMonth = month;

  if (day < myZodiac[month-1].day)
    beginMonth--; else endMonth++;
  
  if (beginMonth == 0) {
    beginMonth = 12; beginYear--;
  }
  else if (endMonth == 13) {
    endMonth = 1; endYear++;
  }

  beginDay = myZodiac[beginMonth-1].day;
  endDay = myZodiac[endMonth-1].day - 1;

  return formatFullDate(beginDay,beginMonth,beginYear) +
         ' - ' +
         formatFullDate(endDay,endMonth,endYear);
}
