Fossil SCM

restructured /json/cap output.

stephan 2011-09-16 21:39 UTC json
Commit 7e3902d14f3e31bf8b989f6e3f0fbb7dd4cefd7c
1 file changed +19
+19
--- src/json.c
+++ src/json.c
@@ -682,11 +682,30 @@
682682
** This is primarily intended for debuggering, but may have
683683
** a use in client code. (?)
684684
*/
685685
cson_value * json_page_cap(void){
686686
cson_value * payload = cson_value_new_object();
687
+ cson_value * sub = cson_value_new_object();
688
+ char * zCap;
689
+ Stmt q;
687690
cson_object * obj = cson_value_get_object(payload);
691
+ if( g.zLogin ){
692
+ cson_object_set( obj, "userName",
693
+ cson_value_new_string(g.zLogin,strlen(g.zLogin)) );
694
+ }
695
+ db_prepare(&q, "SELECT cap FROM user WHERE uid=%d", g.userUid);
696
+ if( db_step(&q)==SQLITE_ROW ){
697
+ char const * zCap = (char const *)sqlite3_column_text(q.pStmt,0);
698
+ if( zCap ){
699
+ cson_object_set( obj, "capabilities",
700
+ cson_value_new_string(zCap,strlen(zCap)) );
701
+ }
702
+ }
703
+ db_finalize(&q);
704
+ cson_object_set( obj, "permissionFlags", sub );
705
+ obj = cson_value_get_object(sub);
706
+
688707
#define ADD(X) cson_object_set(obj, #X, cson_value_new_bool(g.perm.X))
689708
ADD(Setup);
690709
ADD(Admin);
691710
ADD(Delete);
692711
ADD(Password);
693712
--- src/json.c
+++ src/json.c
@@ -682,11 +682,30 @@
682 ** This is primarily intended for debuggering, but may have
683 ** a use in client code. (?)
684 */
685 cson_value * json_page_cap(void){
686 cson_value * payload = cson_value_new_object();
 
 
 
687 cson_object * obj = cson_value_get_object(payload);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
688 #define ADD(X) cson_object_set(obj, #X, cson_value_new_bool(g.perm.X))
689 ADD(Setup);
690 ADD(Admin);
691 ADD(Delete);
692 ADD(Password);
693
--- src/json.c
+++ src/json.c
@@ -682,11 +682,30 @@
682 ** This is primarily intended for debuggering, but may have
683 ** a use in client code. (?)
684 */
685 cson_value * json_page_cap(void){
686 cson_value * payload = cson_value_new_object();
687 cson_value * sub = cson_value_new_object();
688 char * zCap;
689 Stmt q;
690 cson_object * obj = cson_value_get_object(payload);
691 if( g.zLogin ){
692 cson_object_set( obj, "userName",
693 cson_value_new_string(g.zLogin,strlen(g.zLogin)) );
694 }
695 db_prepare(&q, "SELECT cap FROM user WHERE uid=%d", g.userUid);
696 if( db_step(&q)==SQLITE_ROW ){
697 char const * zCap = (char const *)sqlite3_column_text(q.pStmt,0);
698 if( zCap ){
699 cson_object_set( obj, "capabilities",
700 cson_value_new_string(zCap,strlen(zCap)) );
701 }
702 }
703 db_finalize(&q);
704 cson_object_set( obj, "permissionFlags", sub );
705 obj = cson_value_get_object(sub);
706
707 #define ADD(X) cson_object_set(obj, #X, cson_value_new_bool(g.perm.X))
708 ADD(Setup);
709 ADD(Admin);
710 ADD(Delete);
711 ADD(Password);
712

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button