]> granicus.if.org Git - postgresql/commitdiff
Internationalize interactive yes/no responses.
authorPeter Eisentraut <peter_e@gmx.net>
Tue, 27 May 2003 19:36:55 +0000 (19:36 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Tue, 27 May 2003 19:36:55 +0000 (19:36 +0000)
src/bin/scripts/common.c
src/bin/scripts/common.h
src/bin/scripts/createuser.c
src/bin/scripts/dropdb.c
src/bin/scripts/dropuser.c

index a1a6993e724c7b74664920ea822cbb7c27af5d2e..2e0612a8e7473ab8c5008c841e75be1f7ae6c324 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/bin/scripts/common.c,v 1.2 2003/04/04 20:42:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/scripts/common.c,v 1.3 2003/05/27 19:36:54 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -153,3 +153,24 @@ executeQuery(PGconn *conn, const char *query, const char *progname, bool echo)
 
        return res;
 }
+
+
+/*
+ * Check yes/no answer in a localized way.  1=yes, 0=no, -1=neither.
+ */
+
+/* translator: Make sure the (y/n) prompts match the translation of this. */
+#define PG_YESLETTER gettext_noop("y")
+/* translator: Make sure the (y/n) prompts match the translation of this. */
+#define PG_NOLETTER gettext_noop("n")
+
+int
+check_yesno_response(const char *string)
+{
+       if (strcmp(string, gettext(PG_YESLETTER)) == 0)
+               return 1;
+       else if (strcmp(string, gettext(PG_NOLETTER)) == 0)
+               return 0;
+       else
+               return -1;
+}
index 6122b686ceb95db06d69a9837f2246b47138bbc4..8fb33dfd0369ceb674366d1d6d45a72709a14b2a 100644 (file)
@@ -32,3 +32,6 @@ connectDatabase(const char *dbname, const char *pghost, const char *pgport,
 
 PGresult *
 executeQuery(PGconn *conn, const char *command, const char *progname, bool echo);
+
+int
+check_yesno_response(const char *string);
index e58952977dc88301100e75a308e45e023324c40c..864a0ddbe9abde6585d99f062cc458f2567bdbef 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/bin/scripts/createuser.c,v 1.2 2003/05/14 03:26:03 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/scripts/createuser.c,v 1.3 2003/05/27 19:36:54 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -166,7 +166,7 @@ main(int argc, char *argv[])
                char       *reply;
 
                reply = simple_prompt("Shall the new user be allowed to create databases? (y/n) ", 1, true);
-               if (reply[0] == 'y' || reply[0] == 'Y')
+               if (check_yesno_response(reply) == 1)
                        createdb = +1;
                else
                        createdb = -1;
@@ -177,7 +177,7 @@ main(int argc, char *argv[])
                char       *reply;
 
                reply = simple_prompt("Shall the new user be allowed to create more new users? (y/n) ", 1, true);
-               if (reply[0] == 'y' || reply[0] == 'Y')
+               if (check_yesno_response(reply) == 1)
                        adduser = +1;
                else
                        adduser = -1;
index 796930c41591a41651e762db820d45993741116f..2a0831e2911220c8355f83a2d5fc991433981361 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/bin/scripts/dropdb.c,v 1.2 2003/05/14 03:26:03 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/scripts/dropdb.c,v 1.3 2003/05/27 19:36:54 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -107,7 +107,7 @@ main(int argc, char *argv[])
 
                printf(_("Database \"%s\" will be permanently deleted.\n"), dbname);
                reply = simple_prompt("Are you sure? (y/n) ", 1, true);
-               if (reply[0] != 'y' && reply[0] != 'Y')
+               if (check_yesno_response(reply) != 1)
                        exit(0);
        }
 
index 6bc6359cd73452476bcb75f4ef779680a0e42300..db340050a8d09f4f9c37ee8e388456596c9627bc 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/bin/scripts/dropuser.c,v 1.2 2003/05/14 03:26:03 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/scripts/dropuser.c,v 1.3 2003/05/27 19:36:55 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -108,7 +108,7 @@ main(int argc, char *argv[])
 
                printf(_("User \"%s\" will be permanently deleted.\n"), dropuser);
                reply = simple_prompt("Are you sure? (y/n) ", 1, true);
-               if (reply[0] != 'y' && reply[0] != 'Y')
+               if (check_yesno_response(reply) != 1)
                        exit(0);
        }