#! /usr/bin/python3

import sys,os

db=None
param=''

switches=(
    '-I', '-A', '-B', '-c', '-C', '-E', '-f', '-G', '-g', '-i', '-b', '-H',
    '-X', '-L', '-n', '-N', '-o', '-q', '-r', '-s', '-t', '-T', '-U', '-U',
    '-v', '-V', '-w', '--help', '--auto-rehash', '--no-auto-rehash',
    '--disable-auto-rehash', '--batch', '--silent', '--comments',
    '--skip-comments', '--comments', '--compress', '--vertical', '--force',
    '--named-commands', '--disable-named-commands',
    )

ok=False
if sys.stdin.isatty():
    ok=True  # interactive means you know what you are doing .. we hope
for arg in sys.argv[1:]:
    if arg[:1]=='-':
        if arg=='-e':
            ok=True # sql query given, you probably know ...
        if arg in switches:
            param=''
        else:
            if len(arg)<=2:
                param=arg  # expect a parameter for argument -x or whatever this was
        continue
    if not param:
        db=arg 
    param=''

for arg in sys.argv:
    if arg=='mysql' or arg=="-Dmysql" or arg=="--database=mysql": 
        sys.stderr.write("Don't fiddle with the mysql database!\n");
        sys.exit(1);

if db==None and not ok:
    sys.stderr.write("No database specified\n");
    sys.exit(1);

for mysqlcmd in ("/usr/bin/mysql","/usr/local/bin/mysql"):
    if not os.path.exists(mysqlcmd): continue
    args=sys.argv;
    args.append('--i-am-a-dummy')  # --i-am-a-dummy
    os.execv(mysqlcmd,args);

