format_resume("mef_resume.xml", "mef_");


function format_resume(url, basename)
{
    WScript.Echo("Formatting Resume");

    apply_xsl(url, "resume_web.xsl", basename+"resume.htm");
    apply_xsl(url, "resume_text.xsl", basename+"resume.txt");

    apply_xsl(url, "resume_word.xsl", basename+"resume.doc");
    apply_xsl(url, "resume_word_long.xsl", basename+"resume_long.doc");
    convert_to_word_document(basename+"resume.doc")
    convert_to_word_document(basename+"resume_long.doc")
}

function convert_to_word_document(file)
{
    WScript.Echo("Converting "+file+" into Microsoft Word Format.");

    var word = new ActiveXObject("Word.Application");
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    try
    {
        file = fso.GetAbsolutePathName(file);
        word.Visible=true;
        //word.Visible=false;
        var doc = word.Documents.Open(file);
        // save open file in Word Document Format
        doc.SaveAs(file, 0);
    }
    catch(e)
    {
        WScript.Echo("Cannot convert to Word:"+e);
        WScript.Echo(e.description );
    }
    finally
    {
        WScript.Echo("Quitting Word.");
        word.Quit();
    }
}

function apply_xsl(xml_url, xsl_url, result_file)
{
    WScript.Echo("Formatting  "+xml_url+" with "+xsl_url+" XSL stylesheet.");
    var xml = new ActiveXObject("Msxml2.DOMDocument");
    var xsl = new ActiveXObject("Msxml2.DOMDocument");
    xml.load(xml_url);
    xsl.load(xsl_url);

    var str = xml.transformNode(xsl);

    str = str.replace("UTF-16", "iso-8859-1");
    str = str.replace("windows-1251", "iso-8859-1");

    if (result_file != null)
    {
        var fso = new ActiveXObject("Scripting.FileSystemObject");
        var a = fso.CreateTextFile(result_file, true);
        a.WriteLine(str);
        a.Close();
    }

    return str;
}

