// This file contains the pseudo "CSS" for the puzzle and menu.
// In addition it contains message text that may be translated as well as
// options for controlling the startup and operation of the puzzle

// The file is format and case sensitive and follows Javascript conventions for defining objects
// Be careful in modifying since Javascript error messages are not very helpful......
// Best approach is to change only values within quotes.......
//___________________________________________________________________________________________________________//
/// S_Options defines the options for how the puzzle will be started and what menu items will be shown
// The format is tag:  ["value"] or tag: ["value", "last"] 
//         where tag is an internal tag used to identify the option and "value" is one of the predefined values for this option
//         the "last" tag defines whether the last selected value by the user should be used the next time the puzzle is loaded
//         if "last" is specified the value is stored in a cookie and retrieved during loading.
//         The format is IMPORTANT, please note the brackets and commas and the fact that the last entry does not have a comma  
//         All entries are case sensitive and should be lower case letters...     
S_Options =
  { StartupPuzzleDifficulty: ["1", "last"],                 // startup puzzle difficulty where 1=easy, 2=difficult, 3=fiendish and 4=superior
    StartupPuzzleSize: ["3", "last"],                       // startup puzzle size where 1=very small, 2=small, 3=medium and 4=large 
    ShowCellCandidates: ["none"],                         // Possible values are "all" , "single" or "none" for showing cell candidates when menu selected
    AutoUpdateCellCandidates: ["yes", "last"],              // Automatically update cell candidates when entry made. Values are "yes" or "no"
    FlyoverCellEntryHints:    ["no"],                       // Show entry option hints for cells. Values are "yes" or "no"
    FlyoverHintTechniques:    ["yes"],                      // Show flyover hint techiques when hint requested. Values are "yes" or "no"
    RandomSeed: ["random"],                                 // Random number generator seed, either "random", "today" or 6 digit number .., "last" not a useful option here
    HelpFile: ["Sudoku_Help.html"],                         // The name of the Sudoku help file ...   "last" not a useful option here
    HintDelay: [1000],                                       // delay for showing hints in milliseconds ... "last" not a useful option here
    ShowMenu:["yes"],                                       // Show menu - option to not show menu at all ... "last" not a useful option here 
    ShowMenuControls:["yes"],                               // Show "Controls"  menu item ... "last" not a useful option here 
    ShowMenuSaveRestore: ["yes"],                           // Show "Save" and "Restore Saved" menu items ... "last" not a useful option here;  
    ShowMenuCreate:    ["yes"],                             // Show "New" menu item ... "last" not a useful option here
    ShowSaveRestore: ["yes"],                                // Show "Save" and "Restore Saved" menu items;  
    ShowMenuReset:    ["yes"],                              // Show "Reset" menu item ... "last" not a useful option here
    ShowMenuHints:     ["yes"],                             // Show "Hints" menu item ... "last" not a useful option here
    ShowMenuValidate: ["yes"],                              // Show "Validate" menu item ... "last" not a useful option here
    ShowMenuCandidates: ["yes"],                            // Show "Cell Candidates" menu item ... "last" not a useful option here
    ShowMenuSingleStep: ["yes"],                            // Show "Single Step" menu item ... "last" not a useful option here
    ShowMenuSolution: ["yes"],                              // Show "Solution" menu item ... "last" not a useful option here
    ShowMenuSolutionSteps: ["yes"],                         // Show "Solution Steps" menu item ... "last" not a useful option here
    ShowMenuPrint: ["yes"],                                 // Show "Print" menu item ... "last" not a useful option here
    ShowMenuKeypad: ["no"],                                // Show "Keypad" menu item ... "last" not a useful option here
    ShowMenuOptions:["yes"],                                // Show "Options" menu item ... "last" not a useful option here 
    ShowMenuPuzzleSize: ["yes"],                            // Show "Puzzle Size" menu item ... "last" not a useful option here
    ShowMenuCandidateOptions:["no"],                       // Show "Show Candidates " menu item ... "last" not a useful option here
    ShowMenuFlyoverOptions:["no"],                         // Show "Show Flyover Hints " menu item ... "last" not a useful option here 
    ShowMenuTimer:["no"]                                   // Show timer ... "last" not a useful option here 
  };

//___________________________________________________________________________________________________________//
// S_Puzzle defines the formatting of the Sudoku Puzzle
// The format is tag: "style" where tag is internal label for attribute and "style" is the pseudo "CSS" attribute
// Styles must be enclosed in quotes and followed by a comma, except for the last entry in the S_Puzzle object
S_Puzzle =                                      // this defines the puzzle style
    {width:  "550px",                           // width must be specified in pixels, height is determined by width automatically
     fontFamily: "verdana, arial",            // any font family or group of font families generally available on the web may be specified                
     backgroundColor: "white",                  // any valid html,css color definition for a border is permissible.
     InitialValuesColor: "blue",                // the font color used to render the initial puzzle values.
     EnteredValuesColor: "black",               // the font color used to render the entered puzzle values.
     puzzleBorderWidth: "10px",                  // puzzle border width must be specified in pixels, the default is one pixel border
     puzzleBorderStyle: "solid",                // any valid html,css style definition for a border is permissible.
     puzzleBorderColor: "#6AA6D8 #4280B0 #4280B0 #6AA6D8",  // any valid html,css color definition for a border is permissible.
     focusCellColor: "RGB(208,208,224)",                    // the background color used to show focus on cell.
     oddBlockAttributes:                        // odd block attributes.
        {backgroundColor: "#E8F8FF",            // any valid html,css color definition is permissible.
         blockBorderWidth: "3px",               // puzzle border width must be specified in pixels, the default is one pixel border
         blockBorderStyle: "inset",             // any valid html,css style definition for a border is permissible.
         blockBorderColor: "#808000"                // any valid html,css color definition for a border is permissible.
        }, 
     evenBlockAttributes:                       // even block attributes.
        {backgroundColor: "white",              // any valid html,css color definition is permissible.
         blockBorderWidth: "3px",               // puzzle border width must be specified in pixels, the default is one pixel border
         blockBorderStyle: "inset",             // any valid html,css style definition for a border is permissible.
         blockBorderColor: "#808000"   // any valid html,css color definition for a border is permissible.
        }, 
     cellAttributes:                            // cell attributes.
        {backgroundColor: "transparent",        // any valid html,css color definition is permissible.
         cellBorderWidth: "1px",                // puzzle border width must be specified in pixels, the default is one pixel border
         cellBorderStyle: "solid",              // any valid html,css style definition for a border is permissible.
         cellBorderColor: "RGB(224,224,160)"              // any valid html,css color definition for a border is permissible.
        }, 
     subCellAttributes:                         // sub cell attributes.
        {backgroundColor: "transparent",        // any valid html,css color definition is permissible.
         subCellBorderWidth: "1px",             // puzzle border width must be specified in pixels, the default is one pixel border
         subCellBorderStyle: "solid",           // any valid html,css style definition for a border is permissible.
         subCellBorderColor: "RGB(224,224,240)" // any valid html,css color definition for a border is permissible.
        }, 
     floatingWindows:                           // popup windows for Solution Steps and Keypad.
        {backgroundColor: "RGB(66,126,176)",    // any valid html,css color definition is permissible.
         fontColor: "#F8F8FF"                  // any valid html,css color definition is permissible.
        }, 
     hintAttributes:                            // sub cell attributes.
        {backgroundColor: "yellow",             // any valid html,css color definition is permissible.
         fontColor: "red"                       // any valid html,css color definition is permissible.
        } 
    }; 

//___________________________________________________________________________________________________________//
// S_MenuCSS defines the formatting of the Sudoku Menu
// The format is tag: "style" where tag is internal label for style attribute and "style" is the pseudo "CSS" attribute
// Styles must be enclosed in quotes and followed by a comma, except for the last entry in S_MenuCSS object
S_MenuCSS =                                     // this defines the format of the memu used by Sudoku puzzle
    {backgroundColor: "RGB(70,130,180)",       // background color must be specified in RGB format... sorry about that...
     menuAlignment: "vertical",                 // This value cannot be changed 
     menuSize:  "100%",                         // This value cannot be changed 
     menuItemWidth:  "fit",                     // This value cannot be changed 
     borderSize: "3px",                         // border size around main menu
     fontSize: "14px",                          // font size is only limited to space available on screen
     fontFamily: "verdana, arial",            // any font family or group of font families generally available on the web may be specified                
     textAlign: "center",                       // alignment may be "left", "center" or "right"
     headingAttributes:                         // heading attributes.
        {backgroundColor: "#4682B4",   // any valid html,css color definition is permissible.
         fontWeight: "bold",                    // any valid css fontWeight definition 
         fontColor: "white"                   // any valid html,css color definition is permissible.
        }, 
     defaultAttributes:                         // default menu attributes.
        {backgroundColor: "#4682B4",   // any valid html,css color definition is permissible.
         fontWeight: "normal",                  // any valid css fontWeight definition 
         fontColor: "white"                     // any valid html,css color definition is permissible.
        }, 
     activeAttributes:                          // active menu attributes.
        {backgroundColor: "#A6E2FF",  		 // any valid html,css color definition is permissible.
         fontWeight: "bold",                    // any valid css fontWeight definition 
         fontColor: "RGB(66,126,176)"           // any valid html,css color definition  is permissible.
        }, 
     hoverAttributes:                           // hover menu attributes.
        {backgroundColor: "RGB(66,126,176)",   // any valid html,css color definition is permissible.
         fontWeight: "bold",                    // any valid css fontWeight definition 
         fontColor: "white"                   // any valid html,css color definition is permissible.
        }, 
     hintAttributes:                            // sub cell attributes.
        {backgroundColor: "yellow",             // any valid html,css color definition is permissible.
         fontWeight: "normal",                  // any valid css fontWeight definition 
         fontColor: "red"                       // any valid html,css color definition is permissible.
        }, 
     subMenus:[                                 // left square bracket begins definition of sub menu unique elements
        {menuSuffix: "",                        // This value cannot be changed 
         textAlign: "center",                   // This value cannot be changed 
         fontWeight: "bold",                    // any valid css fontWeight definition 
         menusPerRow: "1"                       // This value cannot be changed 
        },
        {menuSuffix: "_N",
         textAlign: "center",                   // This value cannot be changed 
         menusPerRow: "3"                       // This value cannot be changed 
        },
        {menuSuffix: "_N1",
         textAlign: "center",                   // This value cannot be changed 
         menusPerRow: "1"                       // This value cannot be changed 
        },
        {menuSuffix: "_C2",
         textAlign: "center",                   // This value cannot be changed
         menusPerRow: "2"                       // This value cannot be changed
        },
        {menuSuffix: "_S",
         textAlign: "left",                     // This value cannot be changed 
         menusPerRow: "1"                       // This value cannot be changed 
        }
     ]                                          // right square bracket ends definition of sub menu unique elements
        
    };                                          // right curly bracket ends definition of menu


//___________________________________________________________________________________________________________//
//S_Messages is an object to facilitate message translation    
// The format for Sudoku messages is tag: "text" where tag is internal label for message text
// All "text" must be enclosed in quotes and followed by a comma, except for the last entry in message object
// The percent sign(%) followed by a number are parameters that are replaced in the translation process.       
S_Messages =
    {men000: "سودوکو",
     men100: "       جدول",         // spaces are for centering with other items without submenus
     men100s: "",//"Skapa nytt, spara, ladda eller återställ",
     men200: " ",
     men200s: "",//"Visa kontroller",
     men210: "جديد",
     men210s: "",//"Val för att skapa nya pussel",
     men211: "آسان",
     men211s: "",//"Skapa pussel med rating under 500",
     men212: "نيم آسان",
     men212s: "",//"Skapa pussel med rating mellan 500-800",
     men213: "سخت",
     men213s: "",//"Skapa pussel med rating mellan 800-1100",
     men214: "قيرممكن",
     men214s: "",//"Skapa pussel med rating över 1100",
     men215: "(جدول خالي)",
     men215s: "",//"Skapa tomt pussel för att manuellt skriva in alla siffror",
     men216: "",//"Spara",
     men216s:"",//"Spara pusslet (cookies krävs)",
     men217: "",//"Hämta sparat",
     men217s: "",//"Hämta sparat pussel",
     men217a:"",//"Cookies är avstängda i denna webbläsare.",
     men217b:"",//"Cookies krävs för att kunna spara pussel.",
     men217c:"",//"Pusslet är inte sparat.",
     men217d:"",//"Pusslet är sparat.",
     men217e:"",//"Kräver cookies som kvarstår mellan sessioner.",
     men217f:"",//"Inget sparat pussel att hämta",
     men220: "",//"Återställ",
     men220s:"",//"Återställ pusslet till ursprungsläget", 
     men230: "كمك",//"Ledtråd",  
     men230s:"",//"Ger ledtråd för att lösa nästa ruta", 
     men240: "Kontrollera",
     men240s:"",//"Kontrollerar aktuellt status för pusslet", 
     men250: "",//"Visa kandidater",
     men250s:"",//"Visa kandidater för markerad ruta", 
     men257: "راه حل",
     men257s:"",//"Val för att lösa pussel",
     men258: "پايه اول",
     men258s:"",//"Löser nästa steg åt dig",
     men260: "راه حل",
     men260s:"",//"Visa lösningen till pusslet",
     men270: "راه حل كل",
     men270s:"",//"Visa alla steg för att lösa pusslet", 
     men280: "Skriv ut pussel",
     men280s:"",//"Skriver ut detta pussel", 
     men300: "Sifferknappar",
     men300s:"",//"Visar sifferknappar du kan klicka på",
     men310: "Töm",
     men400: " ",
     men400s:"",//"Visa valbara inställningar",
     men410: "اندازه جدول",
     men410s: "",//"Välj en pusselstorlek som passar dig", 
     men411: "بزرگ",   
     men411s:"",//"Visa stort pussel",
     men412: "متوسط",
     men412s:"",//"Visa mellanstort pussel",
     men413: "كوچك",
     men413s:"",//"Visa litet pussel",
     men414: "خيلي كوچك",
     men414s:"",//"Visa mycket litet pussel",
     men420: "Visa kandidater",
     men420s:"Show cell candidates option", 
     men421: "Single cell",
     men421s:"Show cell candidates for selected cell when 'Cell Candidate' option selected", 
     men422: "All cells",
     men422s:"Show cell candidates for all cell when 'Cell Candidate' option selected",
     men423: "Auto update",
     men423s:"Automatically update cell candidates when cell is solved", 
     men430: "Number cell slider",
     men430s:"Enable the ability to use the mouse to select numbers for cells", 
     men440: "Fly over hints",
     men440s:"Options for showing fly over hints",
     men441: "Cell entry options",
     men441s:"Show fly over hints for how to change cell contents", 
     men442: "Hint techniques",
     men442s: "Show fly over containing hint technique when 'Hint' option selected", 
     men500: "       کمک",         // spaces are for centering with other items without submenus
     men500s:"Visa hjälp", 
     men510: "روش حل سودوکو",
     men510s: "Ger en förklaring till hur man spelar och löser sudoku", 
     men520: "درباره...",
     men520s:"Visar information om detta pussel", 
     time1:  "Start",
     time1s: "Start the timer",
     time2:  "Stop",
     time2s: "Stop the timer",
     time3:  "Reset",
     time3s: "Reset the timer",
     time4:  "Timer",  
     solver: "",
     row:    "Rad",
     column: "Kolumn",
     block:  "Sektion", 
     scs1:   "Sole Candidate",                       // used to describe solver technique
     scs2:   "Rad %1, kolumn %2, värde satt till %3", 
     nss1:   "Naked Singles",                       // used to describe solver technique
     nss2:   "Rad %1, kolumn %2, värde satt till %3", 
     hss1:   "Hidden Singles",                      // used to describe solver technique 
     hss2:   "Rad %1, kolumn %2, värde satt till %3", 
     bcris1: "Block and Column / Row Interactions", // used to describe solver technique
     bcris2: "Värdet på %1 måste vara i kolumn %2 i sektion %3, därför kan %4 inte vara en lösning i denna kolumn för andra sektioner.",
     bcris3: "Värdet på %1 måste vara i rad %2 i sektion %3, därför kan %4 inte vara en lösning i denna rad för andra sektioner.",
     bbis1:  "Block and Block Interaction",         // used to describe solver technique
     bbis2:  "Värdet på %1 i tabellerna %2 och %3 kan eliminera %4 från motsvarande rader i tabell %5",
     bbis3:  "Värdet på %1 i tabellerna %2 och %3 kan eliminera %4 från motsvarande kolumner i tabell %5", 
     xws1:   "X-Wing",                                // used to describe solver technique
     sdf1:   "Swordfish",                             // used to describe solver technique
     xws2:   "Kandidatpar av %1:or i rutorna (r:c) ",
     xws3:   "kan eliminera %1 från rad %2, kolumn %3",
     fcs1:   "Forcing Chain",
     fcs2:   "Den länkade kedjan i rutorna (r:c) ",
     fcs3:   "kan eliminera %1 från rad %2, kolumn %3",
     xyw1:   "XY Wing",
     xyw2:   "Den korta kedjan i rutorna (r:c) ",
     xyw3:   "kan eliminera värdet på %1 från rad %2, kolumn %3",
     ccs1:   "Colouring",
     ccs2:   "Parkedjan i rutorna (r:c)",
     ccs3:   "kan eliminera värdet på %1 från rad %2, kolumn %3",
     nsubss1:"Naked Subset",
     nsubss2:"Kandidater med %1 i %2 %3 kan eliminera %4 från andra rutor i denna %5.",
     hsss1:  "Hidden Subset",
     hsss2:  "Kandidater för %1 i %2 %3 kan eliminera andra kandidater från dessa rutor",
     solList: "", //"Pusslets rating är %1 och använder teknikerna %2.",
     create1: "Skapar unikt pussel - Försök nummer %1",
     finish1: "Grattis",
     finish2: "Pusslet är korrekt löst!",
     copyr1:  "Copyright ©",
     copyr2:  "IRANBAZI.NET",
     copyr3:  " ",
     copyr4:  "",                   // text for another bullet on the "About" dialog. HTML tags allowed.
     print1:  "Vänta tills utskriftsfönstret är färdigt.",
     print2:  "Sudoku / سودوکو",
     ssteps1:"Lösningssteg för pusslet",
     ssteps2:"Nr.",
     ssteps3:"Teknik",
     ssteps4:"Beskrivning",
     ssteps5:"Lösningsstegsfönster (flyttbart)",
     val1:   "No errors!",
     val2:   "Cannot find errors from this position!",
     val3:   "Found errors.",
     focus1: "No selection.",
     hint1:  "Håll nere musknappen för att välja en siffra",
     hint2:  "Dubbelklicka för att återställa ruta",
     hint3:  "Dubbelklicka för att välja värde",
     hint4:  "Ledtrådar är inte tillgängliga när pusslet innehåller fel!"       // note that last entry does not have a comma following "
    }; 

    
    
