// Aprica2
// copyright Pirmin Braun 1997-2007 - pirmin@pirmin.de
// all Rights reserved;
#import "Aprica.h"
#ifndef GNUSTEP
@interface Application (Phyton)
- (void)py_initialize;
- (void)py_finalize;
- (int)pyRun_simpleString:(NSString *)s;
@end
#endif
@interface Application (Admin)
@end
@interface Application (Scripting)
- (int)pages;
- (NSMutableDictionary *)parmDict;
- (NSArray *)scriptNames;
- (NSMutableDictionary *)scriptDict;
- (void)clearCacheForScriptNamed:(NSString *)scriptName;
- (void)reloadScripts;
- (NSString *)currentScriptName;
- (NSDictionary *)splitScriptIntoSubScripts:(NSArray *)a defaultScriptName:(NSString *)defaultScriptName;
- (NSArray *)loadScriptFileNamed:(NSString *)dn dirName:(NSString *)dirName suffix:(NSString *)suffix;
- (NSMutableDictionary *)loadScriptFilesIntoDict:(NSMutableDictionary *)dict dirName:(NSString *)dirName suffix:(NSString *)suffix;
- (NSArray *)statementsForScript:(NSString *)script dirName:(NSString *)dirName suffix:(NSString *)suffix;
- (void)loadScriptsForAttributes;
- (NSString *)valueFromExpression:(NSString *)s datasource:(PBWOEditor *)datasource varDict:(NSMutableDictionary *)varDict localVarDict:(NSMutableDictionary *)localVarDict;
- (NSString *)exprValue:(NSString *)s datasource:ds varDict:(NSMutableDictionary *)varDict localVarDict:(NSMutableDictionary *)localVarDict;
- (void)determineOperands:(NSArray *)a1 datasource:(PBWOEditor *)datasource varDict:(NSMutableDictionary *)varDict localVarDict:(NSMutableDictionary *)localVarDict into:(NSMutableArray *)ops;
- (NSString *)kpValueFrom:(id)o forKp:(NSString *)keypath bez:(BOOL)bez provideEO:(BOOL)provideEO varDict:(NSMutableDictionary *)varDict localVarDict:(NSMutableDictionary *)localVarDict;
- (int)matchingEndifFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingEndifFrom:(int)i orElse:(BOOL)yn in:(NSArray *)a name:(NSString *)v;
- (int)matchingEndifOrElseFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingEndwhileFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingEndsubFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingWhileFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingEndforFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (int)matchingForeachFrom:(int)i in:(NSArray *)a name:(NSString *)v;
- (NSMutableDictionary *)matchingEndif;
- (NSMutableDictionary *)matchingEndwhile;
- (NSMutableDictionary *)matchingEndsub;
- (NSMutableDictionary *)matchingWhile;
- (NSMutableDictionary *)matchingEndfor;
- (NSMutableDictionary *)matchingForeach;
- (NSMutableDictionary *)subNamed;
- (int)subNamed:(NSString *)s in:(NSArray *)a name:(NSString *)v;
- (void)determineTargetObject:(NSObject **)targetObject andKey:(NSString **)targetKey forKeyPath:(NSString *)keyPath datasource:(PBWOEditor *)datasource intern:(BOOL)intern varDict:(NSMutableDictionary *)varDict localVarDict:(NSMutableDictionary *)localVarDict;
- (void)provideEnvironmentInVardict:(NSMutableDictionary *)varDict;
- (NSMutableDictionary *)continueScript;
- (NSMutableDictionary *)executeScriptNamed:(NSString *)s1 datasource:(PBWOEditor *)datasource parmDict:(NSMutableDictionary *)p_parmDict;
- (NSMutableDictionary *)executeScriptNamed:(NSString *)v script:(NSString *)s1 datasource:(PBWOEditor *)datasource parmDict:(NSMutableDictionary *)p_parmDict;
// elementare Methode, wird von allen anderen Script-Methoden aufgerufen, auch von druckPDFNamed:...
- (NSMutableDictionary *)executeScriptNamed:(NSString *)v statements:(NSArray *)a datasource:(PBWOEditor *)datasource parmDict:(NSMutableDictionary *)p_parmDict pdf:(PBPDFDoc *)pdf continueMode:(BOOL)continueMode;
- (NSString *)scriptValueForTarget:co andMethod:(NSString *)kp;
//pdf
- (PBPDFDoc *)preparePBPDF;
- (NSString *)currentPDFPath;
- (void)ohnePreview;
- (void)finischPBPDF:(PBPDFDoc *)pdf;
- (NSArray *)pdfStatementsNamed:(NSString *)v datasource:(PBWOEditor *)datasource;
- (NSMutableDictionary *)druckPDFNamed:(NSString *)v datasource:(PBWOEditor *)datasource parmDict:(NSMutableDictionary *)p_parmDict;
@end
@interface Application (Kalender)
- (NSString *)isFeiertag:(NSString *)s;
- (NSArray *)termineFromEOs:(NSArray *)a;
- (void)kalender:(PBWOEditor *)datasource;
- (void)renderTermine:(NSArray *)currentTermine into:(NSMutableArray *)alles viewType:(int)viewType;
- (void)renderWochentageInto:(NSMutableArray *)alles;
@end
@interface Application (DB)
- (void)createNPPModel;
- (NSString *)attributAuflistungForTable:(PBDDTable *)t withDoku:(BOOL)withDoku;
- (NSString *)descriForEn:(NSString *)en pk:(NSString *)pk;
//sequential access
- (BOOL)setFetchCond:(PBSQLQualifier *)q forTable:(PBDDTable *)table soa:(NSArray *)soa handle:(NSString *)handle;
- (BOOL)setFetchCond:(PBSQLQualifier *)q forTable:(PBDDTable *)myTable soa:(NSArray *)soa handle:(NSString *)handle limit:(int)limit;
- (NSMutableDictionary *)nextMDForHandle:(NSString *)handle;
- (PBEO *)nextEOForHandle:(NSString *)handle;
- (void)endFetchingForHandle:(NSString *)handle;
- (void)addFetchRequest:(NSDictionary *)fetchReq forHandle:(NSString *)handle;
- (NSDictionary *)fetchReqForHandle:(NSString *)handle;
//channelpool verwaltung
- (void)closeAllChannels;
- (PBMySQLChannel*)freshChannel;
- (BOOL)establishConnection;
// EO-Umformungen
- (PBEO *)eoFromDict:(NSDictionary *)d entityName:(NSString *)entityName;
- (NSDictionary *)dictFromEO:(PBEO *)eo forKeys:(NSDictionary *)keyDict;
//Basic-Methode f. EOs holen;
- (NSArray *)getBasicEOs:(PBSQLQualifier *)q entityName:(NSString *)entityName offset:(int)offset count:(int)count soa:(NSArray *)soa;
- (NSArray *)getEOs:(NSString *)entityName qualifier:(PBSQLQualifier *)q offset:(int)offset count:(int)count soa:(NSArray *)soa;
- (BOOL)refetchEO:(PBEO *)eo;
- (PBEO *)eoOfRelation:(NSString *)s forEo:(PBEO *)eo;
// Grundoperationen
- (unsigned)evaluateSQL:(NSString *)s;
- (NSString *)getSingleValueAsResultFrom:(NSString *)s;
- (NSArray *)positionenFor:(PBEO *)k1 posEn:(NSString *)posEn;
- (void)copyPosFrom:(PBEO *)k1 to:(PBEO *)k2 posEn:(NSString *)posEn;
- (BOOL)insertEO:(PBEO *)eo;
- (BOOL)deleteEO:(PBEO *)eo;
- (BOOL)updateEO:(PBEO *)eo;
- (PBEO *)createEOforEN:(NSString *)entityName;
// SQL-gen
- (NSString *)orderbyClauseFromSoa:(NSArray *)soa;
- (NSMutableString *)sqlValuesStringFromDict:(NSDictionary *)d forTable:(PBDDTable *)t;
- (NSDictionary *)getDictAsResultFrom:(NSString *)s;
- (NSArray *)getStringArrayAsResultFrom:(NSString *)s;
- (NSArray *)getArrayAsResultFrom:(NSString *)s;
- (NSString *)sqlFormatCt:(PBDDTable *)t;
- (NSString *)sqlFormatCt:(PBDDTable *)t tn:(NSString *)tn temp:(BOOL)temp;
- (NSString *)sqlFormatCANew:(PBDDAttribute *)pba;
- (NSString *)sqlFormatResetSerial:(PBDDTable *)t;
// Unicode Font
- (void)readArialuni_cmap;
- (void)readArialuni_hmtx;
- (NSString *)cidStringFrom:(NSString *)s;
- (unsigned short)cidForUnichar:(unichar)uni;
- (unsigned short)widthForCid:(unsigned short)cid;
- (unsigned short)widthForUnichar:(unichar)uni;
// enhanced
- (NSArray *)referencingEO:(PBEO *)eo;
@end
@interface Application (CEOH)
- (void)helementv3_genPrimKey:(PBEO *)eo inParentEO:(PBEO *)peo;
- (void)gruppenstringToFlags:(PBEO *)eo;
- (void)flagsToGruppenstring:(PBEO *)eo;
@end
@interface Application (Webpublishing)
- (void)publish;
- (NSString *)titleFromFn:(NSString *)fn;
- (NSString *)urlFromCompleteFn:(NSString *)completeFn;
- (NSString *)navLinesFor:(PBEO *)eo;
- (NSString *)navLinkFor:(PBEO *)navEO eo:(PBEO *)eo;
- (NSArray *)dlAndImgIn:(NSString *)dir;
@end
@interface Application (XML)
- (NSString *)encodeObject:o withDocType:(NSString *)docType;
- (void)encodeDictionary:(NSDictionary *)d inXML:(NSMutableString *)ms forName:(NSString *)s nestingLevel:(int)nl;
- (void)encodeArray:(NSArray *)a inXML:(NSMutableString *)ms forName:(NSString *)s nestingLevel:(int)nl;
- (XMLObject *)objectTreeFromXML:(NSString *)xml;
- (id)objectFromXML:(NSString *)xml;
- (NSData *)httpGet:(NSString *)uri host:(NSString *)host;
- (NSData *)httpPost:(NSString *)uri host:(NSString *)host soa:(NSString *)soa parm:(NSDictionary *)parm docType:(NSString *)docType;
- (NSData *)httpPostXMLRPC:(NSString *)uri host:(NSString *)host methodName:(NSString *)methodName params:params single:(BOOL)single;
- (NSString *)encodeObjectXMLRPC:o methodName:(NSString *)methodName single:(BOOL)single;
- (void)encodeDictionaryXMLRPC:(NSDictionary *)d inXML:(NSMutableString *)ms nestingLevel:(int)nl;
- (void)encodeArrayXMLRPC:(NSArray *)a inXML:(NSMutableString *)ms nestingLevel:(int)nl;
@end