 

def generateProjectXCutlist(chanid, starttime, folder):
    """generate cutlist_x.txt for ProjectX"""

    sqlstatement  = """SELECT mark FROM recordedmarkup 
                    WHERE chanid = '%s' AND starttime = '%s' 
                    AND type IN (0,1) ORDER BY mark""" % (chanid, starttime)

    db = getDatabaseConnection()
    cursor = db.cursor()
    cursor.execute(sqlstatement)
    result = cursor.fetchall()
    numrows = int(cursor.rowcount)

    #We must have at least one row returned for this recording
    if numrows==0:
        write("No cutlist in the DB for chanid %s, starttime %s" % chanid, starttime)
        db.close()
        del db
        del cursor
        return False   

    sqlstatement  = """SELECT mark FROM recordedmarkup 
                    WHERE chanid = '%s' AND starttime = '%s' 
                    AND type 1 ORDER BY mark LIMIT 1 """ % (chanid, starttime)

    cursor.execute(sqlstatement)
    firstcut = cursor.fetchall()   

    sqlstatement  = """SELECT mark FROM recordedmarkup 
                    WHERE chanid = '%s' AND starttime = '%s' 
                    AND type IN (0,1) ORDER BY mark LIMIT 1 """ % (chanid, starttime)

    cursor.execute(sqlstatement)
    firstedit = cursor.fetchall()

    cutlist_f=open(os.path.join(folder, "cutlist_x.txt"), 'w')
    cutlist_f.write("CollectionPanel.CutMode=2\n")

    if firstcut == firstedit:
         cutlist_f.write("0\n")

    # iterate through resultset
    for i in range(len(result)):
        if result[i][0] != "" and result[i][0] <> 0:
            cutlist_f.write("%d\n" % result[i])

    cutlist_f.close()

    return True

