connections.xslt 205 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: ps
  5. (C) Copyright IBM Corp. 2005, 2020
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--
  9. Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  10. Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  11. -->
  12. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  13. xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
  14. xmlns:dcx="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/connections/1/"
  15. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  16. xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
  17. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  18. xmlns:out="dummy-uri" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  19. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  20. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  21. xmlns:cms="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cms/1/"
  22. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  23. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  24. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  25. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  26. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  27. xmlns:x="x"
  28. exclude-result-prefixes="lyt dt dp cm utml xts cms pf cf cp send x xsi">
  29. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  30. <xsl:namespace-alias stylesheet-prefix="out" result-prefix="xsl"/>
  31. <!-- Variable containing this logicsheet's namespace uri. -->
  32. <xsl:variable name="dcx-namespace-uri" select="'http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/connections/1/'"/>
  33. <!--
  34. The following parameter field should keep their names unchanged.
  35. Transformer is using them to pass in their values.
  36. m_p_defaultName
  37. m_p_defaultDescription
  38. m_p_defaultScreenTip
  39. m_cube_password
  40. cube_password_checkbox
  41. m_connection_cache_size
  42. m_connection_windows_cube
  43. m_connection_unix_cube
  44. m_connection_type: type of the connection.
  45. m_authentication is used to get the authentication provided by Transformer. it can be none or namespace.
  46. m_transformer_namespace: provided by Transformer to set which namespace should be selected. It contains the namespace searchPath.
  47. -->
  48. <!-- Template that will generate a credential -->
  49. <xsl:template match="dcx:genCredentialTemplate">
  50. <out:template name="dcx:genCredentials">
  51. <out:param name="username"/>
  52. <out:param name="password"/>
  53. <out:param name="passwordEncrypted"/>
  54. <out:param name="cubePassword"/>
  55. <out:param name="cubePasswordEncrypted"/>
  56. <out:param name="namespace"/>
  57. <xts:encrypt>
  58. <xts:param name="provider">cognos.cam</xts:param>
  59. <xts:param name="source">&lt;credential&gt;<xsl:text/>
  60. <out:if test="$namespace != ''">
  61. <xsl:text/>&lt;namespace&gt;<out:value-of select="xtsext:xmlencode(string($namespace))"/>&lt;/namespace&gt;<xsl:text/>
  62. </out:if>
  63. <out:if test="$username!=''">
  64. <xsl:text/>&lt;username&gt;<out:value-of select="xtsext:xmlencode(string($username))"/>&lt;/username&gt;<xsl:text/>
  65. </out:if>
  66. <out:if test="$password!=''">
  67. <xsl:text/>&lt;password&gt;<xsl:text/>
  68. <xts:transform name="XMLEncode">
  69. <out:choose>
  70. <out:when test="$passwordEncrypted = 'true'">
  71. <xts:decrypt>
  72. <xts:param name="encode">xml</xts:param>
  73. <xts:param name="provider">cognos.cam</xts:param>
  74. <xts:param name="source"><out:value-of select="$password"/></xts:param>
  75. </xts:decrypt>
  76. </out:when>
  77. <out:otherwise><out:value-of select="$password"/></out:otherwise>
  78. </out:choose>
  79. </xts:transform>
  80. <xsl:text/>&lt;/password&gt;<xsl:text/>
  81. </out:if>
  82. <out:if test="$cubePassword!=''">
  83. <xsl:text/>&lt;cubePassword&gt;<xsl:text/>
  84. <xts:transform name="XMLEncode">
  85. <out:choose>
  86. <out:when test="$cubePasswordEncrypted = 'true'">
  87. <xts:decrypt>
  88. <xts:param name="encode">xml</xts:param>
  89. <xts:param name="provider">cognos.cam</xts:param>
  90. <xts:param name="source"><out:value-of select="$cubePassword"/></xts:param>
  91. </xts:decrypt>
  92. </out:when>
  93. <out:otherwise><out:value-of select="$cubePassword"/></out:otherwise>
  94. </out:choose>
  95. </xts:transform>
  96. <xsl:text/>&lt;/cubePassword&gt;<xsl:text/>
  97. </out:if>
  98. <xsl:text/>&lt;/credential&gt;</xts:param>
  99. </xts:encrypt>
  100. </out:template>
  101. </xsl:template>
  102. <!--
  103. Set of standard variables when saving a data source or connection
  104. -->
  105. <xsl:template match="dcx:savePasswordVars">
  106. <out:variable name="password">
  107. <!-- **** NOTE: Any change to the following conditions should also affect the 'passwordEncrypted' variable -->
  108. <out:choose>
  109. <!-- if the password checkbox isn't checked, then don't save a password -->
  110. <out:when test="not(key('env-param','m_connection_use_pword')) and key('env-param','m_connection_type')!='sap' and key('env-param','m_connection_type')!='json' and key('env-param','m_connection_type')!='sapR3' and key('env-param','m_connection_type')!='sapECC' and key('env-param','m_connection_type')!='other'"/>
  111. <out:when test="key('env-param', 'passwordEncrypted') != ''">
  112. <out:value-of select="key('env-param', 'passwordEncrypted')"/>
  113. </out:when>
  114. <out:otherwise>
  115. <out:value-of select="key('env-param', 'm_connection_password')"/>
  116. </out:otherwise>
  117. </out:choose>
  118. </out:variable>
  119. <out:variable name="passwordEncrypted" select="(key('env-param','m_connection_use_pword') or key('env-param','m_connection_type')='sap' or key('env-param','m_connection_type')='json' or key('env-param','m_connection_type')='sapR3' or key('env-param','m_connection_type')='sapECC' or key('env-param','m_connection_type')='other') and (key('env-param', 'passwordEncrypted') != '' or key('env-param', 'm_connection_password')[@format='encrypted'])"/>
  120. <out:variable name="cubePassword">
  121. <!-- **** NOTE: Any change to the following conditions should also affect the 'cubePasswordEncrypted' variable -->
  122. <out:choose>
  123. <!-- if the cube password checkbox isn't checked, then don't save a cube password -->
  124. <out:when test="not(key('env-param','cube_password_checkbox'))"/>
  125. <out:when test="key('env-param', 'cubePasswordEncrypted') != ''">
  126. <out:value-of select="key('env-param', 'cubePasswordEncrypted')"/>
  127. </out:when>
  128. <out:otherwise>
  129. <out:value-of select="key('env-param', 'm_cube_password')"/>
  130. </out:otherwise>
  131. </out:choose>
  132. </out:variable>
  133. <out:variable name="cubePasswordEncrypted" select="key('env-param','cube_password_checkbox') and (key('env-param', 'cubePasswordEncrypted') != '' or key('env-param', 'm_cube_password')[@format='encrypted'])"/>
  134. <out:variable name="proxyPasswordEncrypted" select="key('env-param', 'm_connection_proxy_password')[@format='encrypted']"/>
  135. </xsl:template>
  136. <!--
  137. Set of standard variables used when testing a connection
  138. -->
  139. <xsl:template match="dcx:testDataSourceVars">
  140. <out:variable name="useSignonInfo" select="/root/env/param[@name='pageitem'] and /root/env/param[@name='test_using']='signon'"/>
  141. <out:variable name="isPowerCube" select="contains(key('env-param','m_p_connectionString'),';LOCAL;PC;')"/>
  142. <out:variable name="usedNamespace">
  143. <out:choose>
  144. <out:when test="not($isPowerCube)"><out:value-of select="key('env-param', 'm_p_credentialNamespaces')"/></out:when>
  145. <out:otherwise>
  146. <out:choose>
  147. <out:when test="key('env-param', 'm_p_test_credentialNamespaces')!='' and key('env-param', 'm_p_test_credentialNamespaces')!='none'"><out:value-of select="key('env-param','m_p_test_credentialNamespaces')"/></out:when>
  148. <out:otherwise><out:value-of select="key('env-param','m_p_credentialNamespaces')"/></out:otherwise>
  149. </out:choose>
  150. </out:otherwise>
  151. </out:choose>
  152. </out:variable>
  153. <!-- username to use for the test -->
  154. <out:variable name="username">
  155. <out:choose>
  156. <!-- only get the username from the credential if we're not dealing with a powercube -->
  157. <out:when test="$useSignonInfo and not($isPowerCube)">
  158. <out:value-of select="/root/decryptedCredential/credential/username"/>
  159. </out:when>
  160. <out:otherwise>
  161. <out:value-of select="/root/env/param[@name='m_connection_userid']"/>
  162. </out:otherwise>
  163. </out:choose>
  164. </out:variable>
  165. <!-- password to use for the test -->
  166. <out:variable name="password">
  167. <!-- **** NOTE: Any change to the following conditions should also affect the 'passwordEncrypted' variable -->
  168. <out:choose>
  169. <!-- only get the password from the credential if we're not dealing with a powercube -->
  170. <out:when test="$useSignonInfo and not($isPowerCube)">
  171. <out:value-of select="/root/decryptedCredential/credential/password"/>
  172. </out:when>
  173. <out:when test="key('env-param', 'passwordEncrypted') != ''">
  174. <out:value-of select="key('env-param', 'passwordEncrypted')"/>
  175. </out:when>
  176. </out:choose>
  177. </out:variable>
  178. <!-- if we're not using the signon, or we're dealing with a powercube then the password we're using is already encrypted -->
  179. <out:variable name="passwordEncrypted" select="not($useSignonInfo and not($isPowerCube))"/>
  180. <!-- cubePassword to use for the test -->
  181. <out:variable name="cubePassword">
  182. <!-- **** NOTE: Any change to the following conditions should also affect the 'cubePasswordEncrypted' variable -->
  183. <out:choose>
  184. <out:when test="$useSignonInfo and $isPowerCube">
  185. <out:value-of select="/root/decryptedCredential/credential/cubePassword"/>
  186. </out:when>
  187. <out:when test="key('env-param','cubePasswordEncrypted')!=''">
  188. <out:value-of select="key('env-param','cubePasswordEncrypted')"/>
  189. </out:when>
  190. </out:choose>
  191. </out:variable>
  192. <!-- if we're not using the signon, then the password we're using is already encrypted -->
  193. <out:variable name="cubePasswordEncrypted" select="not($useSignonInfo and $isPowerCube)"/>
  194. </xsl:template>
  195. <!-- javascript function to check all the fields of connection for the reserved character ';' -->
  196. <xsl:template match="dcx:checkReservedChar">
  197. function checkReservedChar(obj, label)
  198. {
  199. obj.value = trim(obj.value);
  200. if (obj.value != '' &amp;&amp; obj.value.indexOf(';') != -1 )
  201. {
  202. <out:variable name="reservedErr">
  203. <xts:string id="IDS_ERR_RESERVED_CHAR" encode="javascript">
  204. <xts:param name="field">" + label + "</xts:param>
  205. </xts:string>
  206. </out:variable>
  207. window.alert("<out:value-of select="normalize-space($reservedErr)"/>");
  208. obj.focus();
  209. return false;
  210. }
  211. return true;
  212. }
  213. function checkInvalidChar(obj, label, str)
  214. {
  215. obj.value = trim(obj.value);
  216. if (obj.value != '' &amp;&amp; obj.value.indexOf(str) != -1 )
  217. {
  218. <out:variable name="invalidErr">
  219. <xts:string id="IDS_ERR_INVALID_CHAR" encode="javascript">
  220. <xts:param name="field">" + label + "</xts:param>
  221. <xts:param name="str">" + str + "</xts:param>
  222. </xts:string>
  223. </out:variable>
  224. window.alert("<out:value-of select="normalize-space($invalidErr)"/>");
  225. obj.focus();
  226. return false;
  227. }
  228. return true;
  229. }
  230. function checkMandatoryStartingChar(obj, label, str)
  231. {
  232. obj.value = trim(obj.value);
  233. if (obj.value != '' &amp;&amp; obj.value.indexOf(str) != 0 )
  234. {
  235. <out:variable name="missingErr">
  236. <xts:string id="IDS_ERR_MISSING_CHAR" encode="javascript">
  237. <xts:param name="field">" + label + "</xts:param>
  238. <xts:param name="str">" + str + "</xts:param>
  239. </xts:string>
  240. </out:variable>
  241. window.alert("<out:value-of select="normalize-space($missingErr)"/>");
  242. obj.focus();
  243. return false;
  244. }
  245. return true;
  246. }
  247. </xsl:template>
  248. <xsl:template match="dcx:connectionTemplates">
  249. <out:template name="dcx-gen-timeouts">
  250. <out:param name="form-read-only"/>
  251. <out:param name="utml-form-name"/>
  252. <lyt:layout style="1" title="IDS_SELECT_CONNECT_TIMEOUTS" border="yes" intro="IDS_SELECT_CONNECT_TIMEOUTS_HINT">
  253. <lyt:section>
  254. <dp:input>
  255. <dp:section1 for="ctrl_m_connection_connect_time">
  256. <xts:string id="IDS_SELECT_CONNECT_TIME"/>
  257. </dp:section1>
  258. <dp:section2>
  259. <utml:input type="text" name="m_connection_connect_time" size="10" value="0" id="ctrl_m_connection_connect_time"/>
  260. </dp:section2>
  261. </dp:input>
  262. <dp:input>
  263. <dp:section1 for="ctrl_m_connection_reply_time">
  264. <xts:string id="IDS_SELECT_CONNECT_REPLY"/>
  265. </dp:section1>
  266. <dp:section2>
  267. <utml:input type="text" name="m_connection_reply_time" size="10" value="0" id="ctrl_m_connection_reply_time"/>
  268. </dp:section2>
  269. </dp:input>
  270. </lyt:section>
  271. </lyt:layout>
  272. </out:template>
  273. <out:template name="dcx-db2-odbc-template">
  274. <out:param name="form-read-only"/>
  275. <out:param name="utml-form-name"/>
  276. <lyt:layout style="1">
  277. <lyt:section>
  278. <dp:input>
  279. <dp:section1 for="ctrl_m_connection_database">
  280. <out:choose>
  281. <out:when test="key('env-param','m_connection_type') = 'db2'">
  282. <xts:string id="IDS_SELECT_CONNECT_DB2_DATABASE"/>
  283. </out:when>
  284. <out:otherwise>
  285. <xts:string id="IDS_SELECT_CONNECT_ODBC_DATASOURCE"/>
  286. </out:otherwise>
  287. </out:choose>
  288. </dp:section1>
  289. <dp:section2>
  290. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  291. </dp:section2>
  292. </dp:input>
  293. <dp:input>
  294. <dp:section1 for="ctrl_m_connection_string">
  295. <out:choose>
  296. <out:when test="key('env-param','m_connection_type') = 'db2'">
  297. <xts:string id="IDS_SELECT_CONNECT_DB2_CONNECTSTRING"/>
  298. </out:when>
  299. <out:otherwise>
  300. <xts:string id="IDS_SELECT_CONNECT_ODBC_CONNECTSTRING"/>
  301. </out:otherwise>
  302. </out:choose>
  303. </dp:section1>
  304. <dp:section2>
  305. <utml:input type="text" name="m_connection_string" size="53" id="ctrl_m_connection_string"/>
  306. </dp:section2>
  307. </dp:input>
  308. <dp:input>
  309. <dp:section1 for="ctrl_m_connection_colseq">
  310. <xts:string id="IDS_SELECT_CONNECT_COLSEQ"/>
  311. </dp:section1>
  312. <dp:section2>
  313. <utml:input type="text" name="m_connection_colseq" size="53" id="ctrl_m_connection_colseq"/>
  314. </dp:section2>
  315. </dp:input>
  316. <dp:choice>
  317. <dp:section1>
  318. <utml:input type="checkbox" name="m_connection_use_async" id="ctrl_m_connection_use_async"/>
  319. </dp:section1>
  320. <dp:section2 for="ctrl_m_connection_use_async">
  321. <xts:string id="IDS_SELECT_CONNECT_USE_ASYNC"/>
  322. </dp:section2>
  323. </dp:choice>
  324. <out:if test="key('env-param','m_connection_type') = 'db2'">
  325. <dp:choice>
  326. <dp:section1>
  327. <utml:input type="checkbox" name="m_connection_trusted_context" id="ctrl_m_connection_trusted_context" onchange="updateTrustedContext()"/>
  328. </dp:section1>
  329. <dp:section2 for="ctrl_m_connection_trusted_context">
  330. <xts:string id="IDS_SELECT_CONNECT_TRUSTED_CONTEXT"/>
  331. </dp:section2>
  332. <dp:section3>
  333. <dp:input>
  334. <dp:section1 for="ctrl_m_connection_identity_propagation">
  335. <xts:string id="IDS_SELECT_CONNECT_IDENTITY_PROPAGATION"/>
  336. </dp:section1>
  337. <dp:section2>
  338. <utml:input type="text" name="m_connection_identity_propagation" size="45" id="ctrl_m_connection_identity_propagation"/>
  339. </dp:section2>
  340. </dp:input>
  341. </dp:section3>
  342. </dp:choice>
  343. </out:if>
  344. <out:if test="key('env-param','m_connection_type') = 'odbc' or key('env-param','m_connection_type') = 'composite' or key('env-param','m_connection_type') = 'virtualviewmanager' or key('env-param','m_connection_type') = 'openEdge' or key('env-param','m_connection_type') = 'sybaseIQ'">
  345. <dp:choice>
  346. <dp:section1>
  347. <utml:input type="checkbox" name="m_connection_odbc_access_mode" id="ctrl_m_connection_odbc_access_mode"/>
  348. </dp:section1>
  349. <dp:section2 for="ctrl_m_connection_odbc_access_mode">
  350. <xts:string id="IDS_SELECT_CONNECT_ACCESS_MODE"/>
  351. </dp:section2>
  352. </dp:choice>
  353. </out:if>
  354. </lyt:section>
  355. </lyt:layout>
  356. <out:call-template name="dcx-gen-timeouts">
  357. <out:with-param name="form-read-only" select="$form-read-only"/>
  358. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  359. </out:call-template>
  360. </out:template>
  361. <out:template name="dcx-msas_xmla-template">
  362. <out:param name="form-read-only"/>
  363. <out:param name="utml-form-name"/>
  364. <lyt:layout style="1">
  365. <lyt:section>
  366. <dp:input>
  367. <dp:section1 for="ctrl_m_connection_servername">
  368. <xts:string id="IDS_SELECT_CONNECT_SERVER_URL"/>
  369. </dp:section1>
  370. <dp:section2>
  371. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  372. </dp:section2>
  373. </dp:input>
  374. <dp:input>
  375. <dp:section1 for="ctrl_m_connection_locale">
  376. <xts:string id="IDS_PROP_RUN_LANGUAGE"/>
  377. </dp:section1>
  378. <dp:section2>
  379. <!-- get the default language -->
  380. <out:variable name="default_locale">
  381. <out:choose>
  382. <out:when test="key('env-param','m_connection_locale') != ''">
  383. <out:value-of select="key('env-param','m_connection_locale')"/>
  384. </out:when>
  385. <out:otherwise>
  386. <out:value-of select="translate( $contentLocale, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz' )"/>
  387. </out:otherwise>
  388. </out:choose>
  389. </out:variable>
  390. <utml:select size="1" name="m_connection_locale" utml:track="true" id="ctrl_m_connection_locale">
  391. <out:for-each select="/root/config/param[@name='locale']/locale[@type='contentLocale']">
  392. <utml:option>
  393. <out:if test="string(id)=$default_locale">
  394. <out:attribute name="selected">selected</out:attribute>
  395. </out:if>
  396. <utml:value><out:value-of select="id"/></utml:value>
  397. <out:value-of select="displayName"/>
  398. </utml:option>
  399. </out:for-each>
  400. </utml:select>
  401. </dp:section2>
  402. </dp:input>
  403. </lyt:section>
  404. </lyt:layout>
  405. </out:template>
  406. <out:template name="dcx-sql-template">
  407. <out:param name="form-read-only"/>
  408. <out:param name="utml-form-name"/>
  409. <lyt:layout style="1">
  410. <lyt:section>
  411. <dp:input>
  412. <dp:section1 for="ctrl_m_connection_database">
  413. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  414. </dp:section1>
  415. <dp:section2>
  416. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  417. </dp:section2>
  418. </dp:input>
  419. <dp:input>
  420. <dp:section1 id="DatabaseConnection_ID">
  421. <xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME"/>
  422. </dp:section1>
  423. <dp:section2>
  424. <utml:radio-group name="m_connection_sql_database_choice" utml:default-value="specified">
  425. <dp:choice aria-labelledby="DatabaseConnection_ID">
  426. <dp:section1>
  427. <utml:input type="radio" value="master" id="ctrl_m_connection_sql_database_choice_master"/>
  428. </dp:section1>
  429. <dp:section2 for="ctrl_m_connection_sql_database_choice_master">
  430. <xts:string id="IDS_SELECT_CONNECT_MASTER_DATABASE"/>
  431. </dp:section2>
  432. <dp:section1>
  433. <utml:input type="radio" value="specified" id="ctrl_m_connection_sql_database_choice_specified" aria-labelledby="lbl_m_connection_sql_database_choice_specified"/>
  434. </dp:section1>
  435. <dp:section2 id="lbl_m_connection_sql_database_choice_specified">
  436. <utml:input type="text" name="m_connection_sql_database_name" size="49" aria-labelledby="DatabaseConnection_ID"/>
  437. </dp:section2>
  438. </dp:choice>
  439. </utml:radio-group>
  440. </dp:section2>
  441. </dp:input>
  442. <dp:input>
  443. <dp:section1 for="ctrl_m_connection_sql_application">
  444. <xts:string id="IDS_SELECT_CONNECT_APPLICATION_NAME"/>
  445. </dp:section1>
  446. <dp:section2>
  447. <utml:input type="text" name="m_connection_sql_application" size="53" id="ctrl_m_connection_sql_application"/>
  448. </dp:section2>
  449. </dp:input>
  450. <dp:input>
  451. <dp:section1 for="ctrl_m_connection_colseq">
  452. <xts:string id="IDS_SELECT_CONNECT_COLSEQ"/>
  453. </dp:section1>
  454. <dp:section2>
  455. <utml:input type="text" name="m_connection_colseq" size="53" id="ctrl_m_connection_colseq"/>
  456. </dp:section2>
  457. </dp:input>
  458. <out:if test="datasources/datasource/supportsOptionalConnectionParameters='true'">
  459. <dp:input>
  460. <dp:section1>
  461. <dp:list>
  462. <dp:section>
  463. <dp:label for="ctrl_m_connection_optional_parameters"><xts:string id="IDS_SELECT_CONNECT_OPTIONAL_CONNECTION_PARAMETERS"/></dp:label>
  464. </dp:section>
  465. <dp:section>
  466. <dp:hint wrap="wrap"><xts:string id="IDS_SELECT_CONNECT_OPTIONAL_CONNECTION_PARAMETERS_INTRODUCTION"/></dp:hint>
  467. </dp:section>
  468. </dp:list>
  469. </dp:section1>
  470. <dp:section2>
  471. <utml:input type="text" name="m_connection_optional_parameters" size="100" id="ctrl_m_connection_optional_parameters"/>
  472. </dp:section2>
  473. </dp:input>
  474. </out:if>
  475. <out:if test="contains(' sql2005 sql2008 sql2012-2014 ', concat(' ',key('env-param','m_connection_type'),' '))">
  476. <dp:input>
  477. <dp:section1 for="ctrl_m_connection_sql_marsconnection">
  478. <xts:string id="IDS_SELECT_CONNECT_MARSCONNECTION"/>
  479. </dp:section1>
  480. <dp:section2>
  481. <utml:select name="m_connection_sql_marsconnection" size="1" id="ctrl_m_connection_sql_marsconnection">
  482. <utml:default-value>NO</utml:default-value>
  483. <utml:option value="YES"><xts:string id="IDS_SELECT_CONNECT_MARSCONNECTION_YES"/></utml:option>
  484. <utml:option value="NO"><xts:string id="IDS_SELECT_CONNECT_MARSCONNECTION_NO"/></utml:option>
  485. </utml:select>
  486. </dp:section2>
  487. </dp:input>
  488. </out:if>
  489. </lyt:section>
  490. </lyt:layout>
  491. </out:template>
  492. <out:template name="dcx-oracle-template">
  493. <out:param name="form-read-only"/>
  494. <out:param name="utml-form-name"/>
  495. <lyt:layout style="1">
  496. <lyt:section>
  497. <dp:input>
  498. <dp:section1 for="ctrl_m_connection_database">
  499. <xts:string id="IDS_SELECT_CONNECT_SQLNET_CONNECTSTRING"/>
  500. </dp:section1>
  501. <dp:section2>
  502. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  503. </dp:section2>
  504. </dp:input>
  505. <dp:input>
  506. <dp:section1 for="ctrl_m_connection_colseq">
  507. <xts:string id="IDS_SELECT_CONNECT_COLSEQ"/>
  508. </dp:section1>
  509. <dp:section2>
  510. <utml:input type="text" name="m_connection_colseq" size="53" id="ctrl_m_connection_colseq"/>
  511. </dp:section2>
  512. </dp:input>
  513. </lyt:section>
  514. </lyt:layout>
  515. </out:template>
  516. <out:template name="dcx-sybase-template">
  517. <out:param name="form-read-only"/>
  518. <out:param name="utml-form-name"/>
  519. <out:param name="connection-type"/>
  520. <lyt:layout style="1">
  521. <lyt:section>
  522. <dp:input>
  523. <dp:section1 for="ctrl_m_connection_database">
  524. <xts:string id="IDS_SELECT_CONNECT_SYBASE_SERVER"/>
  525. </dp:section1>
  526. <dp:section2>
  527. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  528. </dp:section2>
  529. </dp:input>
  530. <dp:input>
  531. <dp:section1 id="sybaseDatabaseName_ID">
  532. <xts:string id="IDS_SELECT_CONNECT_SYBASE_DATABASE_NAME"/>
  533. </dp:section1>
  534. <dp:section2>
  535. <utml:radio-group name="m_connection_sybase_database_choice" utml:default-value="specified">
  536. <dp:choice aria-labelledby="sybaseDatabaseName_ID">
  537. <dp:section1>
  538. <utml:input type="radio" value="master" id="ctrl_m_connection_sybase_database_choice_master"/>
  539. </dp:section1>
  540. <dp:section2 for="ctrl_m_connection_sybase_database_choice_master">
  541. <xts:string id="IDS_SELECT_CONNECT_SYBASE_MASTER_DATABASE"/>
  542. </dp:section2>
  543. <dp:section1>
  544. <utml:input type="radio" value="specified">
  545. <out:attribute name="aria-label">
  546. <xts:string id="IDS_SELECT_CONNECT_SYBASE_SPECIFY_DATABASE_NAME"/>
  547. </out:attribute>
  548. </utml:input>
  549. </dp:section1>
  550. <dp:section2>
  551. <utml:input type="text" name="m_connection_sybase_database_name" size="49">
  552. <out:attribute name="aria-label">
  553. <xts:string id="IDS_SELECT_CONNECT_SYBASE_DATABASE_NAME"/>
  554. </out:attribute>
  555. </utml:input>
  556. </dp:section2>
  557. </dp:choice>
  558. </utml:radio-group>
  559. </dp:section2>
  560. </dp:input>
  561. <dp:input>
  562. <dp:section1 for="ctrl_m_connection_sybase_application">
  563. <xts:string id="IDS_SELECT_CONNECT_SYBASE_APPLICATION"/>
  564. </dp:section1>
  565. <dp:section2>
  566. <utml:input type="text" name="m_connection_sybase_application" size="53" id="ctrl_m_connection_sybase_application"/>
  567. </dp:section2>
  568. </dp:input>
  569. <dp:input>
  570. <dp:section1 for="ctrl_m_connection_colseq">
  571. <xts:string id="IDS_SELECT_CONNECT_COLSEQ"/>
  572. </dp:section1>
  573. <dp:section2>
  574. <utml:input type="text" name="m_connection_colseq" size="53" id="ctrl_m_connection_colseq"/>
  575. </dp:section2>
  576. </dp:input>
  577. <out:choose>
  578. <out:when test="$connection-type = 'sybase'">
  579. <dp:input>
  580. <dp:section1 for="ctrl_m_connection_packet">
  581. <xts:string id="IDS_SELECT_CONNECT_SYBASE_PACKET"/>
  582. </dp:section1>
  583. <dp:section2>
  584. <utml:input type="text" name="m_connection_packet" size="10" value="512" id="ctrl_m_connection_packet"/>
  585. </dp:section2>
  586. </dp:input>
  587. </out:when>
  588. <out:when test="$connection-type = 'sybase_ct15'">
  589. <dp:input>
  590. <dp:section1 for="ctrl_m_connection_packet">
  591. <xts:string id="IDS_SELECT_CONNECT_SYBASE_PACKET"/>
  592. </dp:section1>
  593. <dp:section2>
  594. <utml:input type="text" name="m_connection_packet" size="10" value="2048" id="ctrl_m_connection_packet"/>
  595. </dp:section2>
  596. </dp:input>
  597. </out:when>
  598. </out:choose>
  599. <dp:input>
  600. <dp:section1 for="ctrl_m_connection_sybase_async">
  601. <xts:string id="IDS_SELECT_CONNECT_SYBASE_ASYNC"/>
  602. </dp:section1>
  603. <dp:section2>
  604. <utml:select name="m_connection_sybase_async" size="1" id="ctrl_m_connection_sybase_async">
  605. <utml:default-value>1</utml:default-value>
  606. <utml:option value="0"><xts:string id="IDS_SELECT_CONNECT_SYBASE_ASYNC0"/></utml:option>
  607. <utml:option value="1"><xts:string id="IDS_SELECT_CONNECT_SYBASE_ASYNC1"/></utml:option>
  608. <utml:option value="2"><xts:string id="IDS_SELECT_CONNECT_SYBASE_ASYNC2"/></utml:option>
  609. <utml:option value="3"><xts:string id="IDS_SELECT_CONNECT_SYBASE_ASYNC3"/></utml:option>
  610. </utml:select>
  611. </dp:section2>
  612. </dp:input>
  613. <dp:input>
  614. <dp:section1 for="ctrl_m_connection_polling">
  615. <xts:string id="IDS_SELECT_CONNECT_SYBASE_POLLING"/>
  616. </dp:section1>
  617. <dp:section2>
  618. <utml:input type="text" name="m_connection_polling" size="10" value="100" id="ctrl_m_connection_polling"/>
  619. </dp:section2>
  620. </dp:input>
  621. </lyt:section>
  622. </lyt:layout>
  623. <out:call-template name="dcx-gen-timeouts">
  624. <out:with-param name="form-read-only" select="$form-read-only"/>
  625. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  626. </out:call-template>
  627. </out:template>
  628. <out:template name="dcx-consolidation-template">
  629. <out:param name="form-read-only"/>
  630. <out:param name="utml-form-name"/>
  631. <lyt:layout style="1">
  632. <lyt:section>
  633. <dp:input>
  634. <dp:section1 for="ctrl_m_connection_servername">
  635. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  636. </dp:section1>
  637. <dp:section2>
  638. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  639. </dp:section2>
  640. </dp:input>
  641. <dp:input>
  642. <dp:section1 for="ctrl_m_connection_port">
  643. <xts:string id="IDS_SELECT_CONNECT_PORTNUMBER"/>
  644. </dp:section1>
  645. <dp:section2>
  646. <utml:input type="text" name="m_connection_port" value="8800" size="10" id="ctrl_m_connection_port"/>
  647. </dp:section2>
  648. </dp:input>
  649. </lyt:section>
  650. </lyt:layout>
  651. </out:template>
  652. <out:template name="dcx-contributorSeries7-template">
  653. <out:param name="form-read-only"/>
  654. <out:param name="utml-form-name"/>
  655. <script language="javascript">
  656. function checkPADIDValue()
  657. {
  658. frm = document.pform;
  659. var val = frm.m_connection_padid.value ;
  660. val = trim(val);
  661. if (val.length > 0) {
  662. //Here enable the namespace.
  663. <out:if test="key('env-param','m_connection_type') = 'contributorSeries7' and not(/root/namespaces/cm:queryResponse/cm:namespace)">
  664. alert('<xts:string id="IDS_PROP_CONN_PLANNING_NO_NAMESPACE_WARNING" encode="javascript"/>');
  665. frm.m_p_credentialNamespaces.disabled = true;
  666. return false;
  667. </out:if>
  668. frm.m_p_credentialNamespaces.disabled = false;
  669. } else {
  670. //Here disable the namespace.
  671. frm.m_p_credentialNamespaces.disabled = true;
  672. }
  673. }
  674. </script>
  675. <lyt:layout style="1">
  676. <lyt:section>
  677. <dp:input>
  678. <dp:section1 for="ctrl_m_connection_servername">
  679. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  680. </dp:section1>
  681. <dp:section2>
  682. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  683. </dp:section2>
  684. </dp:input>
  685. <dp:input>
  686. <dp:section1 for="ctrl_m_connection_port">
  687. <xts:string id="IDS_SELECT_CONNECT_PORTNUMBER"/>
  688. </dp:section1>
  689. <dp:section2>
  690. <utml:input type="text" name="m_connection_port" value="8800" size="10" id="ctrl_m_connection_port"/>
  691. </dp:section2>
  692. </dp:input>
  693. <dp:list>
  694. <dp:section for="ctrl_m_connection_padid">
  695. <dp:label><xts:string id="IDS_SELECT_CONNECT_CONTRIBUTOR_PADID"/></dp:label>
  696. </dp:section>
  697. <dp:section>
  698. <dp:hint wrap="wrap"><xts:string id="IDS_PROP_CONN_PLANNING_PADID_DESCRIPTION"/></dp:hint>
  699. </dp:section>
  700. <dp:section>
  701. <utml:input type="text" name="m_connection_padid" size="53" onkeyup="checkPADIDValue()" id="ctrl_m_connection_padid"/>
  702. </dp:section>
  703. </dp:list>
  704. </lyt:section>
  705. </lyt:layout>
  706. </out:template>
  707. <out:template name="dcx-powercube-template">
  708. <out:param name="form-read-only"/>
  709. <out:param name="utml-form-name"/>
  710. <lyt:layout style="1">
  711. <lyt:section>
  712. <dp:input>
  713. <dp:section1 for="ctrl_m_connection_cache_size">
  714. <xts:string id="IDS_SELECT_CONNECT_POWERCUBE_CACHE_SIZE"/>
  715. </dp:section1>
  716. <dp:section2>
  717. <utml:input type="text" name="m_connection_cache_size" size="53" value="" onblur="checkPositiveIntegerDefault(document.pform.m_connection_cache_size, '')" id="ctrl_m_connection_cache_size"/>
  718. </dp:section2>
  719. </dp:input>
  720. </lyt:section>
  721. </lyt:layout>
  722. <lyt:layout style="1" title="IDS_SELECT_CONNECT_POWERCUBE_LOCATION" border="yes" intro="IDS_SELECT_CONNECT_POWERCUBE_LOCATION_INTRO">
  723. <lyt:section>
  724. <dp:input>
  725. <dp:section1 for="ctrl_m_connection_windows_cube">
  726. <xts:string id="IDS_SELECT_CONNECT_POWERCUBE_WIN_LOCATION"/>
  727. </dp:section1>
  728. <dp:section2>
  729. <utml:input type="text" name="m_connection_windows_cube" size="53" id="ctrl_m_connection_windows_cube"/>
  730. </dp:section2>
  731. </dp:input>
  732. <dp:input>
  733. <dp:section1 for="ctrl_m_connection_unix_cube">
  734. <xts:string id="IDS_SELECT_CONNECT_POWERCUBE_UNIX_LOCATION"/>
  735. </dp:section1>
  736. <dp:section2>
  737. <utml:input type="text" name="m_connection_unix_cube" size="53" id="ctrl_m_connection_unix_cube"/>
  738. </dp:section2>
  739. </dp:input>
  740. </lyt:section>
  741. </lyt:layout>
  742. </out:template>
  743. <out:template name="dcx-msanalysis2005-template">
  744. <out:param name="form-read-only"/>
  745. <out:param name="utml-form-name"/>
  746. <lyt:layout style="1">
  747. <lyt:section>
  748. <dp:input>
  749. <dp:section1 for="ctrl_m_connection_servername">
  750. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  751. </dp:section1>
  752. <dp:section2>
  753. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  754. </dp:section2>
  755. </dp:input>
  756. <dp:input>
  757. <dp:section1 for="ctrl_m_connection_namedinstance">
  758. <xts:string id="IDS_SELECT_CONNECT_MSANALYSIS2005_NAMED_INSTANCE"/>
  759. </dp:section1>
  760. <dp:section2>
  761. <utml:input type="text" name="m_connection_namedinstance" size="53" id="ctrl_m_connection_namedinstance"/>
  762. </dp:section2>
  763. </dp:input>
  764. <dp:input>
  765. <dp:section1 for="ctrl_m_connection_locale">
  766. <xts:string id="IDS_PROP_RUN_LANGUAGE"/>
  767. </dp:section1>
  768. <dp:section2>
  769. <!-- get the default language -->
  770. <out:variable name="default_locale">
  771. <out:choose>
  772. <out:when test="key('env-param','m_connection_locale') != ''">
  773. <out:value-of select="key('env-param','m_connection_locale')"/>
  774. </out:when>
  775. <out:otherwise>
  776. <out:value-of select="translate( $contentLocale, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz' )"/>
  777. </out:otherwise>
  778. </out:choose>
  779. </out:variable>
  780. <utml:select size="1" name="m_connection_locale" utml:track="true" id="ctrl_m_connection_locale">
  781. <out:for-each select="/root/config/param[@name='locale']/locale[@type='contentLocale']">
  782. <utml:option>
  783. <out:if test="string(id)=$default_locale">
  784. <out:attribute name="selected">selected</out:attribute>
  785. </out:if>
  786. <utml:value><out:value-of select="id"/></utml:value>
  787. <out:value-of select="displayName"/>
  788. </utml:option>
  789. </out:for-each>
  790. </utml:select>
  791. </dp:section2>
  792. </dp:input>
  793. </lyt:section>
  794. </lyt:layout>
  795. </out:template>
  796. <out:template name="dcx-db2olap-template">
  797. <out:param name="form-read-only"/>
  798. <out:param name="utml-form-name"/>
  799. <lyt:layout style="1">
  800. <lyt:section>
  801. <dp:input>
  802. <dp:section1 for="ctrl_m_connection_servername">
  803. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  804. </dp:section1>
  805. <dp:section2>
  806. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  807. </dp:section2>
  808. </dp:input>
  809. </lyt:section>
  810. </lyt:layout>
  811. </out:template>
  812. <out:template name="dcx-tm1R-template">
  813. <out:param name="form-read-only"/>
  814. <out:param name="utml-form-name"/>
  815. <lyt:layout style="1">
  816. <lyt:section>
  817. <dp:input>
  818. <dp:section1 for="ctrl_m_connection_hostname">
  819. <xts:string id="IDS_SELECT_CONNECT_HOST_TMR"/>
  820. </dp:section1>
  821. <dp:section2>
  822. <utml:input type="text" name="m_connection_hostname" size="53" id="ctrl_m_connection_hostname"/>
  823. </dp:section2>
  824. </dp:input>
  825. <dp:input>
  826. <dp:section1 for="ctrl_m_connection_tm1port">
  827. <xts:string id="IDS_SELECT_CONNECT_PORT_TMR"/>
  828. </dp:section1>
  829. <dp:section2>
  830. <utml:input type="text" name="m_connection_tm1port" size="10" id="ctrl_m_connection_tm1port"/>
  831. </dp:section2>
  832. </dp:input>
  833. <dp:choice>
  834. <dp:section1>
  835. <utml:input type="checkbox" name="m_connection_use_ssl" id="ctrl_m_connection_use_ssl"/>
  836. </dp:section1>
  837. <dp:section2 for="ctrl_m_connection_use_ssl">
  838. <xts:string id="IDS_SELECT_CONNECT_PROTOCOL_TMR"/>
  839. </dp:section2>
  840. </dp:choice>
  841. </lyt:section>
  842. </lyt:layout>
  843. </out:template>
  844. <out:template name="dcx-tm1-template">
  845. <out:param name="form-read-only"/>
  846. <out:param name="utml-form-name"/>
  847. <lyt:layout style="1">
  848. <lyt:section>
  849. <dp:input>
  850. <dp:section1 for="ctrl_m_connection_hostname">
  851. <xts:string id="IDS_SELECT_CONNECT_HOST_TM"/>
  852. </dp:section1>
  853. <dp:section2>
  854. <utml:input type="text" name="m_connection_hostname" size="53" id="ctrl_m_connection_hostname"/>
  855. </dp:section2>
  856. </dp:input>
  857. <dp:input>
  858. <dp:section1 for="ctrl_m_connection_servername">
  859. <xts:string id="IDS_SELECT_CONNECT_SERVER_TM"/>
  860. </dp:section1>
  861. <dp:section2>
  862. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  863. </dp:section2>
  864. </dp:input>
  865. </lyt:section>
  866. </lyt:layout>
  867. </out:template>
  868. <out:template name="dcx-odata-template">
  869. <out:param name="form-read-only"/>
  870. <out:param name="utml-form-name"/>
  871. <lyt:layout style="1">
  872. <lyt:section>
  873. <dp:input>
  874. <dp:section1 for="m_connection_service_root_URI">
  875. <xts:string id="IDS_SELECT_CONNECT_SERVICE_ROOT_URI"/>
  876. </dp:section1>
  877. <dp:section2>
  878. <utml:input type="text" name="m_connection_service_root_URI" size="53" id="ctrl_m_connection_service_root_URI"/>
  879. </dp:section2>
  880. </dp:input>
  881. </lyt:section>
  882. </lyt:layout>
  883. </out:template>
  884. <out:template name="dcx-json-template">
  885. <out:param name="form-read-only"/>
  886. <out:param name="utml-form-name"/>
  887. <out:variable name="dcx-http-method">
  888. <out:choose>
  889. <out:when test="key('env-param','m_connection_http_method') != ''">
  890. <out:value-of select="string(key('env-param','m_connection_http_method'))"/>
  891. </out:when>
  892. <out:when test="key('env-param','m_p_connectionString') != ''">
  893. <out:value-of select="substring-before(substring-after(string(key('env-param','m_p_connectionString')), ';METHOD='), ';')"/>
  894. </out:when>
  895. <out:otherwise>
  896. <out:value-of select="'GET'"/>
  897. </out:otherwise>
  898. </out:choose>
  899. </out:variable>
  900. <script language="javascript">
  901. var dataSourceList = new Array();
  902. var dataSource;
  903. var oldOnload = window.onload;
  904. window.onload = function() {
  905. if (oldOnload) {
  906. oldOnload();
  907. }
  908. initJSONDialog();
  909. }
  910. function initJSONDialog()
  911. {
  912. var f = document.pform;
  913. if (f) {
  914. // Initialize the default property list for supported JSON data sources.
  915. initJSONDataSources();
  916. var i = 0;
  917. var connSubType = f.m_connection_subType;
  918. var connTypeSelectBox = f.m_json_connection_type;
  919. var connectionString = f.m_p_connectionString.value;
  920. // debugger;
  921. if (connectionString == '') {
  922. // This indicates we are creating a new data source. Initialize all the values to default.
  923. i = 1;
  924. populateJSONDialogDefaultValues();
  925. } else if (connSubType != undefined &amp;&amp; connSubType != ''){
  926. // This is the case where we opened a saved connection. We will set the connection type based on
  927. // its code and leave the rest of the property untouched. They were set in connections.js.
  928. i = 2;
  929. populateJSONDialogFromConnString(connectionString);
  930. } else if (connSubType == undefined) {
  931. // This is the case when we are updating the authentication type select box
  932. // or the JSON connection type select box.
  933. i = 3;
  934. updateJSONDialogAuthentication();
  935. }
  936. }
  937. }
  938. function initJSONDataSources()
  939. {
  940. <out:for-each select="/root/datasources/datasource/supportedDataSources/supportedDataSource">
  941. var dataSource = getDataSource('<out:value-of select="name"/>', '<out:value-of select="subType"/>');
  942. <out:for-each select="authenticationTypes/authenticationType">
  943. dataSource.authenticationTypes[<out:value-of select="(position() - 1)"/>] =
  944. getAuthenticationType(
  945. '<out:value-of select="type"/>',
  946. '<out:value-of select="temporaryTokenEndpoint"/>',
  947. '<out:value-of select="authorizationEndpoint"/>',
  948. '<out:value-of select="tokenEndpoint"/>',
  949. '<out:value-of select="scope"/>'
  950. );
  951. // Also keep track of the default auth type id (starts from 0).
  952. var isDefault = '<out:value-of select="./@isDefault"/>';
  953. if (isDefault == "true") {
  954. dataSource.defaultAuthTypeID = <out:value-of select="(position() - 1)"/>;
  955. }
  956. </out:for-each>
  957. dataSourceList[<out:value-of select="(position() - 1)"/>] = dataSource;
  958. </out:for-each>
  959. }
  960. function populateJSONDialogDefaultValues() {
  961. var f = document.pform;
  962. if (f) {
  963. var dataSource = dataSourceList[0];
  964. populateAuthenticationTypes(dataSource);
  965. setDefaultAuthType(dataSource);
  966. // setAuthEndpointsDefaultValues(f, dataSource);
  967. f.m_json_connection_type.value = dataSource.name;
  968. f.m_connection_subType = dataSource.subType;
  969. f.m_p_connectionString.value = ' '; // Modify connection string so as not to be stuck in an eternal loop.
  970. changeAuthenticationType();
  971. }
  972. }
  973. function populateJSONDialogFromConnString(connectionString) {
  974. var f = document.pform;
  975. if (f) {
  976. for (var i = 0; i &lt; dataSourceList.length; i++) {
  977. var dataSource = dataSourceList[i];
  978. if (f.m_connection_subType == dataSource.subType) {
  979. // set the value of JSON Type select box to the supported dataSource name (eg. Cloudant, CouchDB, Twitter etc...)
  980. f.m_json_connection_type.value = dataSource.name;
  981. // populate the auth select box with the appropriate authentication types ("None", "Basic", "Auth1.0" etc..)
  982. // for the specific JSON subtype (i.e. Cloudant, CouchDB, Twitter etc...)
  983. populateAuthenticationTypes(dataSource);
  984. // We need to reset the value of "m_connection_authentication_type" select box again,
  985. // because we have populated it dynamically.
  986. f.m_connection_authentication_type.value = getField(connectionString, ';AUTHENTICATION_TYPE=');
  987. }
  988. }
  989. }
  990. // Repopulate the list and set the appropriate values once again so
  991. // as the "gen-create-signon" to be updated. The first time it was created first and then
  992. // we were able to modify dynamically the contents of the authList + textboxs without being
  993. // able to erase them in the first place from the generated html code.
  994. changeAuthenticationType();
  995. setPredifinedAuthEndpointsDefaultValues(f, dataSource, connectionString);
  996. }
  997. function updateJSONDialogAuthentication() {
  998. var f = document.pform;
  999. if (f) {
  1000. for (var i = 0; i &lt; dataSourceList.length; i++) {
  1001. var dataSource = dataSourceList[i];
  1002. if (f.m_json_connection_type.value == dataSource.name) {
  1003. f.m_connection_subType = dataSource.subType;
  1004. populateAuthenticationTypes(dataSource);
  1005. // The "m_connection_auth_type_keep_state" hidden input element is used in order to cache "authentication_type" value.
  1006. // This is value is cached either by changing the value of the authentication type select box,
  1007. // or by updating the value of the JSON connection type select box. For the later case, this hidden input element has
  1008. // been already initialized with the default authentication value for the new type of JSON connection.
  1009. document.getElementById("ctrl_m_connection_authentication_type").value = document.pform.m_connection_auth_type_keep_state.value
  1010. if (f.m_trace_subtype_change.value == "true") {
  1011. // Force a second update so as to update the signon
  1012. // and authentication forms.
  1013. changeAuthenticationType();
  1014. }
  1015. setAuthEndpointsDefaultValues(f, dataSource);
  1016. break;
  1017. }
  1018. }
  1019. }
  1020. }
  1021. function updateJSONType() {
  1022. // This function is triggered whenever the user changes the type of the JSON connection through
  1023. // the corresponding select box.
  1024. var f = document.pform;
  1025. if (f) {
  1026. for (var i = 0; i &lt; dataSourceList.length; i = i + 1) {
  1027. dataSource = dataSourceList[i];
  1028. if (f.m_json_connection_type.value == dataSource.name) {
  1029. f.m_connection_subType = dataSource.subType;
  1030. f.m_connection_assembly.checked = false;
  1031. // set auth select box value to the default authentication type we recommend to the users
  1032. // [e.g. Auth Types: {ApiKey, OAuth2} -> set value to OAuth2 because it is the default according to generateDatasourceMetadata.xslt]
  1033. setDefaultAuthType(dataSource);
  1034. // Keep state of the default auth type in a hidden input html element.
  1035. f.m_connection_auth_type_keep_state.value = dataSource.authenticationTypes[dataSource.defaultAuthTypeID].type;
  1036. f.m_trace_subtype_change.value = "true";
  1037. break;
  1038. }
  1039. }
  1040. f.submit();
  1041. }
  1042. }
  1043. /////////////////////////////// UTILS FUNCTIONS /////////////////////////////////////////////
  1044. function getDataSource(name, subType) {
  1045. var dataSource = {};
  1046. dataSource.name = name;
  1047. dataSource.subType = subType;
  1048. dataSource.authenticationTypes = new Array();
  1049. // Also keep track of the default auth type id (starts from 0).
  1050. dataSource.defaultAuthTypeID = -1;
  1051. return dataSource;
  1052. }
  1053. function getAuthenticationType(type, temporaryTokenEndpoint, authorizationEndpoint, tokeEndpoint, scope) {
  1054. var authenticationType = {};
  1055. authenticationType.type = type;
  1056. authenticationType.temporaryTokenEndpoint = temporaryTokenEndpoint;
  1057. authenticationType.authorizationEndpoint = authorizationEndpoint;
  1058. authenticationType.tokenEndpoint = tokeEndpoint;
  1059. authenticationType.scope = scope;
  1060. return authenticationType;
  1061. }
  1062. function populateAuthenticationTypes(dataSource) {
  1063. var selectBox = document.getElementById("ctrl_m_connection_authentication_type");
  1064. for (var i = 0; i &lt; dataSource.authenticationTypes.length; i++) {
  1065. var authenticationType = dataSource.authenticationTypes[i];
  1066. var option = document.createElement("option");
  1067. option.text = authenticationType.type;
  1068. option.value = authenticationType.type;
  1069. selectBox.options.add(option);
  1070. }
  1071. }
  1072. function setAuthEndpointsDefaultValues(f, dataSource) {
  1073. var authType = f.m_connection_authentication_type.value;
  1074. var authenticationTypes = dataSource.authenticationTypes;
  1075. for (var j = 0; j &lt; authenticationTypes.length; j++) {
  1076. var authenticationType = authenticationTypes[j];
  1077. if (authenticationType.type == authType) {
  1078. if (authType == 'OAuth1.0' &amp;&amp; f.m_connection_temporary_token_endpoint != undefined) {
  1079. f.m_connection_temporary_token_endpoint.value = authenticationType.temporaryTokenEndpoint;
  1080. }
  1081. if (authType == 'OAuth1.0' || authType == 'OAuth2.0') {
  1082. if (f.m_connection_authorization_endpoint != undefined) {
  1083. f.m_connection_authorization_endpoint.value = authenticationType.authorizationEndpoint;
  1084. }
  1085. if (f.m_connection_token_endpoint != undefined) {
  1086. f.m_connection_token_endpoint.value = authenticationType.tokenEndpoint;
  1087. }
  1088. }
  1089. if (authType == 'OAuth2.0' &amp;&amp; f.m_connection_scope != undefined) {
  1090. f.m_connection_scope.value = authenticationType.scope;
  1091. }
  1092. break;
  1093. }
  1094. }
  1095. }
  1096. function setPredifinedAuthEndpointsDefaultValues(f, dataSource, connectionString) {
  1097. var authType = f.m_connection_authentication_type.value;
  1098. if (authType == 'OAuth1.0' &amp;&amp; f.m_connection_temporary_token_endpoint != undefined) {
  1099. f.m_connection_temporary_token_endpoint.value = getField(connectionString, ';TEMPORARY_TOKEN_ENDPOINT=');
  1100. }
  1101. if (authType == 'OAuth1.0' || authType == 'OAuth2.0') {
  1102. if (f.m_connection_authorization_endpoint != undefined) {
  1103. f.m_connection_authorization_endpoint.value = getField(connectionString, ';AUTHORIZATION_ENDPOINT=');
  1104. }
  1105. if (f.m_connection_token_endpoint != undefined) {
  1106. f.m_connection_token_endpoint.value = getField(connectionString, ';TOKEN_ENDPOINT=');
  1107. }
  1108. }
  1109. if (authType == 'OAuth2.0' &amp;&amp; f.m_connection_scope != undefined) {
  1110. f.m_connection_scope.value = getField(connectionString, ';SCOPE=');
  1111. }
  1112. }
  1113. function setDefaultAuthType(dataSource) {
  1114. var selectBox = document.getElementById("ctrl_m_connection_authentication_type");
  1115. selectBox.value = dataSource.authenticationTypes[dataSource.defaultAuthTypeID].type;
  1116. }
  1117. function checkURLFormat(obj)
  1118. {
  1119. if(obj.value.length >= 7)
  1120. {
  1121. if (obj.value.length >= 8)
  1122. {
  1123. var str = obj.value.substring(0,8).toLowerCase();
  1124. if (str == "https://" || str == "file:///")
  1125. {
  1126. return true;
  1127. }
  1128. }
  1129. var str = obj.value.substring(0,7).toLowerCase();
  1130. if (str == "http://" || str == "file://" )
  1131. {
  1132. return true;
  1133. }
  1134. }
  1135. <out:variable name="endpointFormatErr">
  1136. <xts:string id="IDS_ERR_URL_FORMAT" encode="javascript"/>
  1137. </out:variable>
  1138. window.alert("<out:value-of select="($endpointFormatErr)"/>");
  1139. obj.focus();
  1140. return false;
  1141. }
  1142. function checkEndpointFormat(obj)
  1143. {
  1144. if(obj.value.length >= 7)
  1145. {
  1146. if (obj.value.length >= 8)
  1147. {
  1148. var str = obj.value.substring(0,8).toLowerCase();
  1149. if (str == "https://")
  1150. {
  1151. return true;
  1152. }
  1153. }
  1154. var str = obj.value.substring(0,7).toLowerCase();
  1155. if (str == "http://")
  1156. {
  1157. return true;
  1158. }
  1159. }
  1160. <out:variable name="urlFormatErr">
  1161. <xts:string id="IDS_ERR_ENDPOINT_FORMAT" encode="javascript"/>
  1162. </out:variable>
  1163. window.alert("<out:value-of select="($urlFormatErr)"/>");
  1164. obj.focus();
  1165. return false;
  1166. }
  1167. </script>
  1168. <lyt:layout style="1">
  1169. <lyt:section>
  1170. <dp:input>
  1171. <dp:section1 for="m_json_connection_type">
  1172. <xts:string id="IDS_PROP_CONN_TYPE"/>
  1173. </dp:section1>
  1174. <dp:section2>
  1175. <utml:select name="m_json_connection_type" size="1" onchange="updateJSONType()" id="ctrl_m_json_connection_type">
  1176. <out:for-each select="/root/datasources/datasource/supportedDataSources/supportedDataSource">
  1177. <utml:option>
  1178. <utml:value><out:value-of select="name"/></utml:value>
  1179. <out:value-of select="name"/>
  1180. </utml:option>
  1181. </out:for-each>
  1182. </utml:select>
  1183. </dp:section2>
  1184. </dp:input>
  1185. <dp:input>
  1186. <dp:section1 for="m_connection_url">
  1187. <xts:string id="IDS_SELECT_CONNECT_URL"/>
  1188. </dp:section1>
  1189. <dp:section2>
  1190. <utml:input type="text" name="m_connection_url" size="53" id="ctrl_m_connection_url"/>
  1191. </dp:section2>
  1192. </dp:input>
  1193. <dp:choice>
  1194. <dp:section1>
  1195. <utml:input type="checkbox" name="m_connection_assembly" onclick="toggleAssemblyCheckbox()" id="ctrl_m_connection_assembly"/>
  1196. </dp:section1>
  1197. <dp:section2 for="m_json_connection_assembly">
  1198. <xts:string id="IDS_SELECT_CONNECT_ASSEMBLY"/>
  1199. </dp:section2>
  1200. </dp:choice>
  1201. <dp:input>
  1202. <dp:section1 for="m_connection_schema">
  1203. <xts:string id="IDS_SELECT_CONNECT_SCHEMA"/>
  1204. </dp:section1>
  1205. <dp:section2>
  1206. <utml:input type="text" name="m_connection_schema" size="53" id="ctrl_m_connection_schema"/>
  1207. </dp:section2>
  1208. </dp:input>
  1209. <dp:input>
  1210. <dp:section1 for="m_json_connection_http_method">
  1211. <xts:string id="IDS_SELECT_CONNECT_HTTP_METHOD"/>
  1212. </dp:section1>
  1213. <dp:section2>
  1214. <utml:select name="m_connection_http_method" size="1" utml:update="true" onchange="changeHttpMethod()" id="ctrl_m_connection_http_method">
  1215. <utml:option value="GET">
  1216. <xts:string id="IDS_SELECT_CONNECT_HTTP_GET"/>
  1217. </utml:option>
  1218. <utml:option value="POST">
  1219. <xts:string id="IDS_SELECT_CONNECT_HTTP_POST"/>
  1220. </utml:option>
  1221. </utml:select>
  1222. </dp:section2>
  1223. </dp:input>
  1224. <out:if test="$dcx-http-method='POST'">
  1225. <dp:input>
  1226. <dp:section1 for="m_json_connection_http_mime_type">
  1227. <xts:string id="IDS_SELECT_CONNECT_HTTP_CONTENT_TYPE"/>
  1228. </dp:section1>
  1229. <dp:section2>
  1230. <utml:select name="m_connection_http_mime_type" size="1" id="ctrl_m_connection_http_mime_type">
  1231. <out:for-each select="/root/datasources/datasource/supportedMimeTypes/supportedMimeType">
  1232. <utml:option>
  1233. <utml:value><out:value-of select="name"/></utml:value>
  1234. <out:value-of select="name"/>
  1235. </utml:option>
  1236. </out:for-each>
  1237. </utml:select>
  1238. </dp:section2>
  1239. </dp:input>
  1240. <dp:input>
  1241. <dp:section1 for="m_connection_http_message_body">
  1242. <xts:string id="IDS_SELECT_CONNECT_HTTP_MESSAGE_BODY"/>
  1243. </dp:section1>
  1244. <dp:section2>
  1245. <utml:textarea name="m_connection_http_message_body" class="pTextarea" rows="20" cols="60" id="ctrl_m_connection_http_message_body"/>
  1246. </dp:section2>
  1247. </dp:input>
  1248. </out:if>
  1249. <dp:input>
  1250. <dp:section1 for="m_json_connection_json_path">
  1251. <xts:string id="IDS_SELECT_CONNECT_JSON_PATH"/>
  1252. </dp:section1>
  1253. <dp:section2>
  1254. <utml:input type="text" name="m_connection_json_path" size="53" id="ctrl_m_connection_json_path"/>
  1255. </dp:section2>
  1256. </dp:input>
  1257. <script language="javascript">
  1258. function changeHttpMethod()
  1259. {
  1260. document.pform.submit();
  1261. }
  1262. </script>
  1263. </lyt:section>
  1264. </lyt:layout>
  1265. </out:template>
  1266. <out:variable name="filePathName">
  1267. <out:choose>
  1268. <out:when test="key('env-param', 'm_connection_file')">
  1269. <out:value-of select="key('env-param', 'm_connection_file')"/>
  1270. </out:when>
  1271. <out:otherwise>
  1272. <out:value-of select="key('system-param', 'cognosNowCubeFileSuffix')"/>
  1273. </out:otherwise>
  1274. </out:choose>
  1275. </out:variable>
  1276. <out:template name="dcx-cognosnow-template">
  1277. <out:param name="form-read-only"/>
  1278. <out:param name="utml-form-name"/>
  1279. <lyt:layout style="1">
  1280. <lyt:section>
  1281. <dp:input>
  1282. <dp:section1 for="ctrl_m_connection_servername">
  1283. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  1284. </dp:section1>
  1285. <dp:section2>
  1286. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  1287. </dp:section2>
  1288. </dp:input>
  1289. <dp:input>
  1290. <dp:section1 for="ctrl_m_connection_port">
  1291. <xts:string id="IDS_SELECT_CONNECT_PORTNUMBER"/>
  1292. </dp:section1>
  1293. <dp:section2>
  1294. <utml:input type="text" name="m_connection_port" value="8800" size="10" id="ctrl_m_connection_port"/>
  1295. </dp:section2>
  1296. </dp:input>
  1297. <dp:input>
  1298. <dp:section1 for="ctrl_m_connection_file">
  1299. <xts:string id="IDS_SELECT_CONNECT_FILE_NAME_PATH"/>
  1300. </dp:section1>
  1301. <dp:section2>
  1302. <utml:input type="text" name="m_connection_file" size="53" id="ctrl_m_connection_file">
  1303. <out:attribute name="value"><out:value-of select="$filePathName"/></out:attribute>
  1304. </utml:input>
  1305. </dp:section2>
  1306. </dp:input>
  1307. </lyt:section>
  1308. </lyt:layout>
  1309. </out:template>
  1310. <out:template name="dcx-informix-template">
  1311. <out:param name="form-read-only"/>
  1312. <out:param name="utml-form-name"/>
  1313. <lyt:layout style="1">
  1314. <lyt:section>
  1315. <dp:input>
  1316. <dp:section1 for="ctrl_m_connection_database">
  1317. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_DATABASE"/>
  1318. </dp:section1>
  1319. <dp:section2>
  1320. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  1321. </dp:section2>
  1322. </dp:input>
  1323. <dp:input>
  1324. <dp:section1 for="ctrl_m_connection_hostname">
  1325. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_HOSTNAME"/>
  1326. </dp:section1>
  1327. <dp:section2>
  1328. <utml:input type="text" name="m_connection_hostname" size="53" id="ctrl_m_connection_hostname"/>
  1329. </dp:section2>
  1330. </dp:input>
  1331. <dp:input>
  1332. <dp:section1 for="ctrl_m_connection_servername">
  1333. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SERVERNAME"/>
  1334. </dp:section1>
  1335. <dp:section2>
  1336. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  1337. </dp:section2>
  1338. </dp:input>
  1339. <dp:input>
  1340. <dp:section1 for="ctrl_m_connection_colseq">
  1341. <xts:string id="IDS_SELECT_CONNECT_COLSEQ"/>
  1342. </dp:section1>
  1343. <dp:section2>
  1344. <utml:input type="text" name="m_connection_colseq" size="53" id="ctrl_m_connection_colseq"/>
  1345. </dp:section2>
  1346. </dp:input>
  1347. <dp:input>
  1348. <dp:section1 id="informixService_ID">
  1349. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SERVICE"/>
  1350. </dp:section1>
  1351. <dp:section2>
  1352. <utml:radio-group name="m_connection_service" utml:default-value="specified">
  1353. <dp:choice aria-labelledby="informixService_ID">
  1354. <dp:section1>
  1355. <utml:input type="radio" value="sqlexec" id="ctrl_m_connection_service_sqlexec"/>
  1356. </dp:section1>
  1357. <dp:section2 for="ctrl_m_connection_service_sqlexec">
  1358. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SQLEXEC"/>
  1359. </dp:section2>
  1360. <dp:section1>
  1361. <utml:input type="radio" value="sqlturbo" id="ctrl_m_connection_service_sqlturbo"/>
  1362. </dp:section1>
  1363. <dp:section2 for="ctrl_m_connection_service_sqlturbo">
  1364. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SQLTURBO"/>
  1365. </dp:section2>
  1366. <dp:section1>
  1367. <utml:input type="radio" value="specified" id="ctrl_m_connection_service_specified">
  1368. <out:attribute name="aria-label">
  1369. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SPECIFY"/>
  1370. </out:attribute>
  1371. </utml:input>
  1372. </dp:section1>
  1373. <dp:section2>
  1374. <utml:input type="text" name="m_connection_service_name" size="49">
  1375. <out:attribute name="aria-label">
  1376. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_SERVICE"/>
  1377. </out:attribute>
  1378. </utml:input>
  1379. </dp:section2>
  1380. </dp:choice>
  1381. </utml:radio-group>
  1382. </dp:section2>
  1383. </dp:input>
  1384. </lyt:section>
  1385. </lyt:layout>
  1386. </out:template>
  1387. <out:template name="dcx-sapr3-template">
  1388. <out:param name="form-read-only"/>
  1389. <out:param name="utml-form-name"/>
  1390. <script language="javascript">
  1391. function checkLoadBalancing()
  1392. {
  1393. frm = document.pform;
  1394. var val = frm.m_connection_use_loadbalancing.checked ;
  1395. if (val == true)
  1396. {
  1397. frm.m_connection_use_loadbalancing_hidden.value = "true";
  1398. }
  1399. else
  1400. {
  1401. frm.m_connection_use_loadbalancing_hidden.value = "false";
  1402. }
  1403. }
  1404. </script>
  1405. <lyt:layout style="1">
  1406. <lyt:section>
  1407. <dp:input>
  1408. <dp:section1 for="ctrl_m_connection_application_server">
  1409. <xts:string id="IDS_SELECT_CONNECT_SAPR3_APPLICATION_SERVER"/>
  1410. </dp:section1>
  1411. <dp:section2>
  1412. <utml:input type="text" name="m_connection_application_server" size="53" id="ctrl_m_connection_application_server"/>
  1413. </dp:section2>
  1414. </dp:input>
  1415. <dp:input>
  1416. <dp:section1 for="ctrl_m_connection_router_string">
  1417. <xts:string id="IDS_SELECT_CONNECT_SAPR3_ROUTER_STRING"/>
  1418. </dp:section1>
  1419. <dp:section2>
  1420. <utml:input type="text" name="m_connection_router_string" size="53" id="ctrl_m_connection_router_string"/>
  1421. </dp:section2>
  1422. </dp:input>
  1423. <dp:input>
  1424. <dp:section1 for="ctrl_m_connection_system_number">
  1425. <xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEM_NUMBER"/>
  1426. </dp:section1>
  1427. <dp:section2>
  1428. <utml:input type="text" name="m_connection_system_number" size="20" id="ctrl_m_connection_system_number"/>
  1429. </dp:section2>
  1430. </dp:input>
  1431. <dp:input>
  1432. <dp:section1 for="ctrl_m_connection_client">
  1433. <xts:string id="IDS_SELECT_CONNECT_SAPR3_CLIENT"/>
  1434. </dp:section1>
  1435. <dp:section2>
  1436. <utml:input type="text" name="m_connection_client" value="0" size="10" id="ctrl_m_connection_client"/>
  1437. </dp:section2>
  1438. </dp:input>
  1439. <dp:input>
  1440. <dp:section1 for="ctrl_m_connection_language">
  1441. <xts:string id="IDS_SELECT_CONNECT_SAPR3_LANG"/>
  1442. </dp:section1>
  1443. <dp:section2>
  1444. <utml:input type="text" name="m_connection_language" value="EN" size="10" id="ctrl_m_connection_language"/>
  1445. </dp:section2>
  1446. </dp:input>
  1447. <dp:input>
  1448. <dp:section1 for="ctrl_m_connection_max_conn_in_pool">
  1449. <xts:string id="IDS_SELECT_CONNECT_SAPR3_MAX_CONN_IN_POOL"/>
  1450. </dp:section1>
  1451. <dp:section2>
  1452. <utml:input type="text" name="m_connection_max_conn_in_pool" value="6" size="10" for="ctrl_m_connection_max_conn_in_pool"/>
  1453. </dp:section2>
  1454. </dp:input>
  1455. <dp:input>
  1456. <dp:section1 for="ctrl_m_connection_table_read_function">
  1457. <xts:string id="IDS_SELECT_CONNECT_SAPR3_TABLE_READ_FUNCTION"/>
  1458. </dp:section1>
  1459. <dp:section2>
  1460. <utml:input type="text" name="m_connection_table_read_function" value="RFC_READ_TABLE" size="20" id="ctrl_m_connection_table_read_function"/>
  1461. </dp:section2>
  1462. </dp:input>
  1463. <dp:input>
  1464. <dp:section1 for="ctrl_m_connection_table_row_count">
  1465. <xts:string id="IDS_SELECT_CONNECT_SAPR3_TABLE_ROW_COUNT"/>
  1466. </dp:section1>
  1467. <dp:section2>
  1468. <utml:input type="text" name="m_connection_table_row_count" value="50000" size="10" id="ctrl_m_connection_table_row_count"/>
  1469. </dp:section2>
  1470. </dp:input>
  1471. <dp:input>
  1472. <dp:section1 for="ctrl_m_connection_abap_query_db_access_limit">
  1473. <xts:string id="IDS_SELECT_CONNECT_SAPR3_ABAP_QUERY_DB_ACCESS_LIMIT"/>
  1474. </dp:section1>
  1475. <dp:section2>
  1476. <utml:input type="text" name="m_connection_abap_query_db_access_limit" value="1000" size="10" id="ctrl_m_connection_abap_query_db_access_limit"/>
  1477. </dp:section2>
  1478. </dp:input>
  1479. <dp:choice>
  1480. <dp:section1>
  1481. <utml:input type="checkbox" id="m_connection_use_loadbalancing" name="m_connection_use_loadbalancing" onclick="checkLoadBalancing();"/>
  1482. </dp:section1>
  1483. <dp:section2 for="m_connection_use_loadbalancing">
  1484. <xts:string id="IDS_SELECT_CONNECT_SAPR3_USE_LOAD_BALANCING"/>
  1485. </dp:section2>
  1486. </dp:choice>
  1487. <dp:input>
  1488. <dp:section1>
  1489. <utml:input type="hidden" name="m_connection_use_loadbalancing_hidden" size="10"/>
  1490. </dp:section1>
  1491. </dp:input>
  1492. <dp:input>
  1493. <dp:section1 for="ctrl_m_connection_message_server">
  1494. <xts:string id="IDS_SELECT_CONNECT_SAPR3_MESSAGE_SERVER"/>
  1495. </dp:section1>
  1496. <dp:section2>
  1497. <utml:input type="text" name="m_connection_message_server" size="53" id="ctrl_m_connection_message_server"/>
  1498. </dp:section2>
  1499. </dp:input>
  1500. <dp:input>
  1501. <dp:section1 for="ctrl_m_connection_system_id">
  1502. <xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEM_ID"/>
  1503. </dp:section1>
  1504. <dp:section2>
  1505. <utml:input type="text" name="m_connection_system_id" size="20" id="ctrl_m_connection_system_id"/>
  1506. </dp:section2>
  1507. </dp:input>
  1508. <dp:input>
  1509. <dp:section1 for="ctrl_m_connection_logon_group">
  1510. <xts:string id="IDS_SELECT_CONNECT_SAPR3_LOGON_GROUP"/>
  1511. </dp:section1>
  1512. <dp:section2>
  1513. <utml:input type="text" name="m_connection_logon_group" size="20" id="ctrl_m_connection_logon_group"/>
  1514. </dp:section2>
  1515. </dp:input>
  1516. </lyt:section>
  1517. </lyt:layout>
  1518. </out:template>
  1519. <out:template name="dcx-sfdc-template">
  1520. <out:param name="form-read-only"/>
  1521. <out:param name="utml-form-name"/>
  1522. <script language="javascript">
  1523. function clearEncryptedProxyPassword()
  1524. {
  1525. document.pform.m_password_changed.value='1';
  1526. if (document.pform.proxyPasswordEncrypted)
  1527. document.pform.proxyPasswordEncrypted.value = '';
  1528. }
  1529. </script>
  1530. <utml:input type="hidden" name="m_username_changed" utml:update="false" value="0"/>
  1531. <utml:input type="hidden" name="m_password_changed" utml:update="false" value="0"/>
  1532. <lyt:layout style="1">
  1533. <lyt:section>
  1534. <dp:input>
  1535. <dp:section1 for="ctrl_m_connection_url">
  1536. <xts:string id="IDS_SELECT_CONNECT_SFDC_URL"/>
  1537. </dp:section1>
  1538. <dp:section2>
  1539. <utml:input type="text" name="m_connection_url" value="https://login.salesforce.com/services/Soap/u/49.0" size="53" id="ctrl_m_connection_url"/>
  1540. </dp:section2>
  1541. </dp:input>
  1542. <dp:input>
  1543. <dp:section1 for="ctrl_m_connection_conc_calls_limit">
  1544. <xts:string id="IDS_SELECT_CONNECT_SFDC_CONCC_CALLS_LIMIT"/>
  1545. </dp:section1>
  1546. <dp:section2>
  1547. <utml:input type="text" name="m_connection_conc_calls_limit" value="25" size="10" id="ctrl_m_connection_conc_calls_limit"/>
  1548. </dp:section2>
  1549. </dp:input>
  1550. <dp:input>
  1551. <dp:section1 for="ctrl_m_connection_user_conc_calls_limit">
  1552. <xts:string id="IDS_SELECT_CONNECT_SFDC_USER_CONCC_CALLS_LIMIT"/>
  1553. </dp:section1>
  1554. <dp:section2>
  1555. <utml:input type="text" name="m_connection_user_conc_calls_limit" value="10" size="10" id="ctrl_m_connection_user_conc_calls_limit"/>
  1556. </dp:section2>
  1557. </dp:input>
  1558. <dp:input>
  1559. <dp:section1 for="ctrl_m_connection_timeout">
  1560. <xts:string id="IDS_SELECT_CONNECT_SFDC_CONN_TIMEOUT"/>
  1561. </dp:section1>
  1562. <dp:section2>
  1563. <utml:input type="text" name="m_connection_timeout" value="60" size="10" id="ctrl_m_connection_timeout"/>
  1564. </dp:section2>
  1565. </dp:input>
  1566. <dp:input>
  1567. <dp:section1 for="ctrl_m_connection_query_batch_size">
  1568. <xts:string id="IDS_SELECT_CONNECT_SFDC_QUERY_BATCH_SIZE"/>
  1569. </dp:section1>
  1570. <dp:section2>
  1571. <utml:input type="text" name="m_connection_query_batch_size" value="500" size="10" id="ctrl_m_connection_query_batch_size"/>
  1572. </dp:section2>
  1573. </dp:input>
  1574. <dp:input>
  1575. <dp:section1 for="ctrl_m_connection_max_retries">
  1576. <xts:string id="IDS_SELECT_CONNECT_SFDC_MAX_RETRIES"/>
  1577. </dp:section1>
  1578. <dp:section2>
  1579. <utml:input type="text" name="m_connection_max_retries" value="1" size="10" id="ctrl_m_connection_max_retries"/>
  1580. </dp:section2>
  1581. </dp:input>
  1582. <dp:input>
  1583. <dp:section1 for="ctrl_m_connection_wait_between_retries">
  1584. <xts:string id="IDS_SELECT_CONNECT_SFDC_WAIT_BETWEEN_RETRIES"/>
  1585. </dp:section1>
  1586. <dp:section2>
  1587. <utml:input type="text" name="m_connection_wait_between_retries" value="0" size="10" id="ctrl_m_connection_wait_between_retries"/>
  1588. </dp:section2>
  1589. </dp:input>
  1590. </lyt:section>
  1591. </lyt:layout>
  1592. <lyt:layout title="IDS_SELECT_CONNECT_PROXY_HOST_SIGNON" style="1" border="yes">
  1593. <lyt:intro>
  1594. <xts:string id="IDS_SELECT_CONNECT_PROXY_HOST_SIGNON_HINT"/>
  1595. </lyt:intro>
  1596. <lyt:section>
  1597. <dp:choice>
  1598. <dp:section1>
  1599. <utml:input type="checkbox" name="m_connection_proxy_enabled" onclick="setProxyControls();" id="ctrl_m_connection_proxy_enabled"/>
  1600. </dp:section1>
  1601. <dp:section2 for="ctrl_m_connection_proxy_enabled">
  1602. <xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_ENABLED"/>
  1603. </dp:section2>
  1604. <dp:section3>
  1605. <dp:input>
  1606. <dp:section1 for="ctrl_m_connection_proxy_host">
  1607. <xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_HOST"/>
  1608. </dp:section1>
  1609. <dp:section2>
  1610. <utml:input type="text" name="m_connection_proxy_host" size="53" id="ctrl_m_connection_proxy_host"/>
  1611. </dp:section2>
  1612. </dp:input>
  1613. <dp:input>
  1614. <dp:section1 for="ctrl_m_connection_proxy_port">
  1615. <xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_PORT"/>
  1616. </dp:section1>
  1617. <dp:section2>
  1618. <utml:input type="text" name="m_connection_proxy_port" size="10" id="ctrl_m_connection_proxy_port"/>
  1619. </dp:section2>
  1620. </dp:input>
  1621. <dp:input>
  1622. <dp:section1 for="ctrl_m_connection_proxy_user">
  1623. <xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_USER"/>
  1624. </dp:section1>
  1625. <dp:section2>
  1626. <utml:input type="text" name="m_connection_proxy_user" size="53" onchange="document.pform.m_username_changed.value='1'" id="ctrl_m_connection_proxy_user"/>
  1627. </dp:section2>
  1628. </dp:input>
  1629. <dp:input>
  1630. <dp:section1 for="ctrl_m_connection_proxy_password">
  1631. <xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_PWD"/>
  1632. </dp:section1>
  1633. <dp:section2>
  1634. <utml:input type="password" name="m_connection_proxy_password" size="53" utml:update="false" onchange="clearEncryptedProxyPassword()" autocomplete="off" id="ctrl_m_connection_proxy_password">
  1635. <utml:value>
  1636. <!-- There is no need to localize this, it's simply a dummy value used to
  1637. make *** appear in the password field. -->
  1638. <xsl:text>###PASSWORD###</xsl:text>
  1639. </utml:value>
  1640. </utml:input>
  1641. </dp:section2>
  1642. </dp:input>
  1643. </dp:section3>
  1644. </dp:choice>
  1645. </lyt:section>
  1646. </lyt:layout>
  1647. </out:template>
  1648. <out:template name="dcx-siebel-template">
  1649. <out:param name="form-read-only"/>
  1650. <out:param name="utml-form-name"/>
  1651. <lyt:layout style="1">
  1652. <lyt:section>
  1653. <dp:input>
  1654. <dp:section1 for="ctrl_m_connection_gatewayserver">
  1655. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_GATEWAYNAMESERVER"/>
  1656. </dp:section1>
  1657. <dp:section2>
  1658. <utml:input type="text" name="m_connection_gatewayserver" size="53" id="ctrl_m_connection_gatewayserver"/>
  1659. </dp:section2>
  1660. </dp:input>
  1661. <dp:input>
  1662. <dp:section1 for="ctrl_m_connection_gatewayport">
  1663. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_GATEWAYPORT"/>
  1664. </dp:section1>
  1665. <dp:section2>
  1666. <utml:input type="text" name="m_connection_gatewayport" value="2321" size="10" id="ctrl_m_connection_gatewayport"/>
  1667. </dp:section2>
  1668. </dp:input>
  1669. <dp:input>
  1670. <dp:section1 for="ctrl_m_connection_enterprise_name">
  1671. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_ENTERPRISENAME"/>
  1672. </dp:section1>
  1673. <dp:section2>
  1674. <utml:input type="text" name="m_connection_enterprise_name" size="10" id="ctrl_m_connection_enterprise_name"/>
  1675. </dp:section2>
  1676. </dp:input>
  1677. <dp:input>
  1678. <dp:section1 for="ctrl_m_connection_aom">
  1679. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_AOM"/>
  1680. </dp:section1>
  1681. <dp:section2>
  1682. <utml:input type="text" name="m_connection_aom" size="10" id="ctrl_m_connection_aom"/>
  1683. </dp:section2>
  1684. </dp:input>
  1685. <dp:input>
  1686. <dp:section1 for="ctrl_m_connection_language">
  1687. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_LANGUAGE"/>
  1688. </dp:section1>
  1689. <dp:section2>
  1690. <utml:input type="text" name="m_connection_language" value="enu" size="10" id="ctrl_m_connection_language"/>
  1691. </dp:section2>
  1692. </dp:input>
  1693. </lyt:section>
  1694. </lyt:layout>
  1695. <lyt:layout style="1" title="IDS_SELECT_CONNECT_SIEBEL_OPTIONAL_PARAMS" border="yes">
  1696. <lyt:section>
  1697. <dp:input>
  1698. <dp:section1 for="ctrl_m_connection_siebel_repo">
  1699. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_REPOSITORY"/>
  1700. </dp:section1>
  1701. <dp:section2>
  1702. <utml:input type="text" name="m_connection_siebel_repo" value="Siebel Repository" size="20" id="ctrl_m_connection_siebel_repo"/>
  1703. </dp:section2>
  1704. </dp:input>
  1705. <dp:input>
  1706. <dp:section1 for="ctrl_m_connection_transport">
  1707. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_TRANSPORT"/>
  1708. </dp:section1>
  1709. <dp:section2>
  1710. <utml:input type="text" name="m_connection_transport" value="TCPIP" size="10" id="ctrl_m_connection_transport"/>
  1711. </dp:section2>
  1712. </dp:input>
  1713. <dp:input>
  1714. <dp:section1 for="ctrl_m_connection_compression">
  1715. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_COMPRESSION"/>
  1716. </dp:section1>
  1717. <dp:section2>
  1718. <utml:input type="text" name="m_connection_compression" value="None" size="10" id="ctrl_m_connection_compression"/>
  1719. </dp:section2>
  1720. </dp:input>
  1721. <dp:input>
  1722. <dp:section1 for="ctrl_m_connection_encryption">
  1723. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_ENCRYPTION"/>
  1724. </dp:section1>
  1725. <dp:section2>
  1726. <utml:input type="text" name="m_connection_encryption" value="None" size="10" id="ctrl_m_connection_encryption"/>
  1727. </dp:section2>
  1728. </dp:input>
  1729. <dp:input>
  1730. <dp:section1 for="ctrl_m_connection_login_retries">
  1731. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_LOGIN_RETRIES"/>
  1732. </dp:section1>
  1733. <dp:section2>
  1734. <utml:input type="text" name="m_connection_login_retries" value="3" size="10" id="ctrl_m_connection_login_retries"/>
  1735. </dp:section2>
  1736. </dp:input>
  1737. <dp:input>
  1738. <dp:section1 for="ctrl_m_connection_login_retry_delay">
  1739. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_LOGIN_RETRY_DELAY"/>
  1740. </dp:section1>
  1741. <dp:section2>
  1742. <utml:input type="text" name="m_connection_login_retry_delay" value="5" size="10" id="ctrl_m_connection_login_retry_delay"/>
  1743. </dp:section2>
  1744. </dp:input>
  1745. <dp:input>
  1746. <dp:section1 for="ctrl_m_connection_local_sort">
  1747. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_LOCAL_SORT"/>
  1748. </dp:section1>
  1749. <dp:section2>
  1750. <utml:input type="text" name="m_connection_local_sort" value="" size="10" id="ctrl_m_connection_local_sort"/>
  1751. </dp:section2>
  1752. </dp:input>
  1753. <dp:input>
  1754. <dp:section1 for="ctrl_m_connection_level">
  1755. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_LEVEL"/>
  1756. </dp:section1>
  1757. <dp:section2>
  1758. <utml:input type="text" name="m_connection_level" value="Primary" size="10" id="ctrl_m_connection_level"/>
  1759. </dp:section2>
  1760. </dp:input>
  1761. <dp:input>
  1762. <dp:section1 for="ctrl_m_connection_charset">
  1763. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_CHARSET"/>
  1764. </dp:section1>
  1765. <dp:section2>
  1766. <utml:input type="text" name="m_connection_charset" value="" size="10" id="ctrl_m_connection_charset"/>
  1767. </dp:section2>
  1768. </dp:input>
  1769. <dp:input>
  1770. <dp:section1 for="ctrl_m_connection_adv_parameters">
  1771. <xts:string id="IDS_SELECT_CONNECT_SIEBEL_ADV_PARAMETERS"/>
  1772. </dp:section1>
  1773. <dp:section2>
  1774. <utml:input type="text" name="m_connection_adv_parameters" size="53" id="ctrl_m_connection_adv_parameters"/>
  1775. </dp:section2>
  1776. </dp:input>
  1777. </lyt:section>
  1778. </lyt:layout>
  1779. </out:template>
  1780. <out:template name="dcx-sap-template">
  1781. <out:param name="form-read-only"/>
  1782. <out:param name="utml-form-name"/>
  1783. <out:variable name="dcx-sap-type">
  1784. <out:choose>
  1785. <out:when test="key('env-param','m_connection_sap_type') != ''">
  1786. <out:value-of select="string(key('env-param','m_connection_sap_type'))"/>
  1787. </out:when>
  1788. <out:otherwise>
  1789. <out:value-of select="'applicationServer'"/>
  1790. </out:otherwise>
  1791. </out:choose>
  1792. </out:variable>
  1793. <out:variable name="dcx-sap-codepage">
  1794. <out:choose>
  1795. <out:when test="contains(key('env-param','m_p_connectionString'), ';codePage=4102')">
  1796. <out:value-of select="'4102'"/>
  1797. </out:when>
  1798. <out:when test="contains(key('env-param','m_p_connectionString'), ';codePage=4103')">
  1799. <out:value-of select="'4103'"/>
  1800. </out:when>
  1801. </out:choose>
  1802. </out:variable>
  1803. <script language="javascript">
  1804. function changeSAPType()
  1805. {
  1806. document.pform.submit();
  1807. }
  1808. </script>
  1809. <lyt:layout style="1">
  1810. <lyt:section>
  1811. <out:variable name="server-name-label">
  1812. <out:choose>
  1813. <out:when test="$dcx-sap-type='messageServer'">
  1814. <xts:string id="IDS_SELECT_CONNECT_SAP_MESSAGE_LABEL"/>
  1815. </out:when>
  1816. <out:when test="$dcx-sap-type='applicationServer'">
  1817. <xts:string id="IDS_SELECT_CONNECT_SAP_APPLICATION_LABEL"/>
  1818. </out:when>
  1819. <out:when test="$dcx-sap-type='destination'">
  1820. <xts:string id="IDS_SELECT_CONNECT_SAP_DESTINATION_LABEL"/>
  1821. </out:when>
  1822. </out:choose>
  1823. </out:variable>
  1824. <dp:input>
  1825. <dp:section1 for="ctrl_m_connection_sap_type">
  1826. <xts:string id="IDS_SELECT_CONNECT_SAP_TYPE"/>
  1827. </dp:section1>
  1828. <dp:section2>
  1829. <utml:select name="m_connection_sap_type" size="1" utml:update="true" onchange="changeSAPType();" id="ctrl_m_connection_sap_type">
  1830. <utml:option value="applicationServer">
  1831. <xts:string id="IDS_SELECT_CONNECT_SAP_APPLICATION"/>
  1832. </utml:option>
  1833. <utml:option value="destination">
  1834. <xts:string id="IDS_SELECT_CONNECT_SAP_DESTINATION"/>
  1835. </utml:option>
  1836. <utml:option value="messageServer">
  1837. <xts:string id="IDS_SELECT_CONNECT_SAP_MESSAGE"/>
  1838. </utml:option>
  1839. </utml:select>
  1840. </dp:section2>
  1841. </dp:input>
  1842. <dp:input>
  1843. <dp:section1 for="ctrl_m_connection_database">
  1844. <out:text/><out:value-of select="$server-name-label"/><out:text/>
  1845. </dp:section1>
  1846. <dp:section2>
  1847. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  1848. </dp:section2>
  1849. </dp:input>
  1850. <out:choose>
  1851. <out:when test="$dcx-sap-type='messageServer'">
  1852. <dp:input>
  1853. <dp:section1 for="ctrl_m_connection_sys_id">
  1854. <xts:string id="IDS_SELECT_CONNECT_SYSTEM_ID"/>
  1855. </dp:section1>
  1856. <dp:section2>
  1857. <utml:input type="text" name="m_connection_sys_id" size="10" id="ctrl_m_connection_sys_id"/>
  1858. </dp:section2>
  1859. </dp:input>
  1860. <dp:input>
  1861. <dp:section1 for="ctrl_m_connection_logon">
  1862. <xts:string id="IDS_SELECT_CONNECT_LOGON_GROUP"/>
  1863. </dp:section1>
  1864. <dp:section2>
  1865. <utml:input type="text" name="m_connection_logon" size="10" id="ctrl_m_connection_logon"/>
  1866. </dp:section2>
  1867. </dp:input>
  1868. </out:when>
  1869. <out:when test="$dcx-sap-type='applicationServer'">
  1870. <dp:input>
  1871. <dp:section1 for="ctrl_m_connection_sys_no">
  1872. <xts:string id="IDS_SELECT_CONNECT_SYSTEM_NUMBER"/>
  1873. </dp:section1>
  1874. <dp:section2>
  1875. <utml:input type="text" name="m_connection_sys_no" value="0" size="10" id="ctrl_m_connection_sys_no"/>
  1876. </dp:section2>
  1877. </dp:input>
  1878. </out:when>
  1879. </out:choose>
  1880. <dp:input>
  1881. <dp:section1 for="ctrl_m_connection_client_no">
  1882. <xts:string id="IDS_SELECT_CONNECT_CLIENT_NUMBER"/>
  1883. </dp:section1>
  1884. <dp:section2>
  1885. <utml:input type="text" name="m_connection_client_no" value="0" size="10" id="ctrl_m_connection_client_no"/>
  1886. </dp:section2>
  1887. </dp:input>
  1888. <dp:input>
  1889. <dp:section1 for="ctrl_m_connection_sap_codepage"><xts:string id="IDS_SELECT_CONNECT_SAP_SERVER_CODEPAGE"/></dp:section1>
  1890. <dp:section2>
  1891. <utml:select name="m_connection_sap_codepage" size="1" utml:update="true" id="ctrl_m_connection_sap_codepage">
  1892. <utml:default-value>4102</utml:default-value>
  1893. <utml:option value="1100"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1100"/></utml:option>
  1894. <utml:option value="1160"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1160"/></utml:option>
  1895. <utml:option value="1401"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1401"/></utml:option>
  1896. <utml:option value="1404"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1404"/></utml:option>
  1897. <utml:option value="1610"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1610"/></utml:option>
  1898. <utml:option value="1614"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1614"/></utml:option>
  1899. <utml:option value="1700"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1700"/></utml:option>
  1900. <utml:option value="1704"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1704"/></utml:option>
  1901. <utml:option value="1800"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_1800"/></utml:option>
  1902. <utml:option value="4102"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_4102"/></utml:option>
  1903. <utml:option value="4103"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_4103"/></utml:option>
  1904. <utml:option value="4110"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_4110"/></utml:option>
  1905. <utml:option value="8000"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_8000"/></utml:option>
  1906. <utml:option value="8300"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_8300"/></utml:option>
  1907. <utml:option value="8400"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_8400"/></utml:option>
  1908. <utml:option value="8500"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_8500"/></utml:option>
  1909. <utml:option value="8600"><xts:string id="IDS_SELECT_CONNECT_SAP_CP_8600"/></utml:option>
  1910. </utml:select>
  1911. </dp:section2>
  1912. </dp:input>
  1913. <out:if test="$dcx-sap-type='applicationServer' or $dcx-sap-type='messageServer'">
  1914. <dp:input>
  1915. <dp:section1 for="ctrl_m_connection_router_string">
  1916. <xts:string id="IDS_SELECT_CONNECT_ROUTER_STRING"/>
  1917. </dp:section1>
  1918. <dp:section2>
  1919. <utml:input type="text" name="m_connection_router_string" size="53" id="ctrl_m_connection_router_string"/>
  1920. </dp:section2>
  1921. </dp:input>
  1922. </out:if>
  1923. </lyt:section>
  1924. </lyt:layout>
  1925. </out:template>
  1926. <out:template name="dcx-sapR3-template">
  1927. <out:param name="form-read-only"/>
  1928. <out:param name="utml-form-name"/>
  1929. <lyt:layout style="1">
  1930. <lyt:section>
  1931. <dp:input>
  1932. <dp:section1>
  1933. <xts:string id="IDS_SELECT_CONNECT_SAPR3_HOSTNAME"/>
  1934. </dp:section1>
  1935. <dp:section2>
  1936. <utml:input type="text" name="m_connection_hostname" size="53"/>
  1937. </dp:section2>
  1938. </dp:input>
  1939. <dp:input>
  1940. <dp:section1>
  1941. <xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEMNUMBER"/>
  1942. </dp:section1>
  1943. <dp:section2>
  1944. <utml:input type="text" name="m_connection_sys_no" size="53"/>
  1945. </dp:section2>
  1946. </dp:input>
  1947. <dp:input>
  1948. <dp:section1>
  1949. <xts:string id="IDS_SELECT_CONNECT_SAPR3_GATEWAY_HOST"/>
  1950. </dp:section1>
  1951. <dp:section2>
  1952. <utml:input type="text" name="m_connection_gateway_host" size="53"/>
  1953. </dp:section2>
  1954. </dp:input>
  1955. <dp:input>
  1956. <dp:section1>
  1957. <xts:string id="IDS_SELECT_CONNECT_SAPR3_GATEWAY_SERVICE"/>
  1958. </dp:section1>
  1959. <dp:section2>
  1960. <utml:input type="text" name="m_connection_gateway_service" size="53"/>
  1961. </dp:section2>
  1962. </dp:input>
  1963. <dp:input>
  1964. <dp:section1>
  1965. <xts:string id="IDS_SELECT_CONNECT_SAPR3_DESTINATION"/>
  1966. </dp:section1>
  1967. <dp:section2>
  1968. <utml:input type="text" name="m_connection_destination" size="53"/>
  1969. </dp:section2>
  1970. </dp:input>
  1971. <dp:input>
  1972. <dp:section1>
  1973. <xts:string id="IDS_SELECT_CONNECT_SAPR3_CLIENT"/>
  1974. </dp:section1>
  1975. <dp:section2>
  1976. <utml:input type="text" name="m_connection_client" size="53"/>
  1977. </dp:section2>
  1978. </dp:input>
  1979. <!-- Content Locale -->
  1980. <dp:input>
  1981. <dp:section1>
  1982. <xts:string id="IDS_SELECT_CONNECT_SAPR3_LANGUAGE"/>
  1983. </dp:section1>
  1984. <dp:section2>
  1985. <utml:input type="text" name="m_connection_sap_language" size="53"/>
  1986. </dp:section2>
  1987. </dp:input>
  1988. <dp:input>
  1989. <dp:section1>
  1990. <xts:string id="IDS_SELECT_CONNECT_SAPR3_COLLATION"/>
  1991. </dp:section1>
  1992. <dp:section2>
  1993. <utml:input type="text" name="m_connection_colseq" size="53"/>
  1994. </dp:section2>
  1995. </dp:input>
  1996. <out:if test="key('env-param','m_connection_type') = 'sapR3'">
  1997. <dp:input>
  1998. <dp:section1>
  1999. <xts:string id="IDS_SELECT_CONNECT_SAPR3_COGUDAOUTERJOIN"/>
  2000. </dp:section1>
  2001. <dp:section2>
  2002. <utml:select name="m_connection_cogudaouterjoin" size="1">
  2003. <utml:default-value>OFF</utml:default-value>
  2004. <utml:option value="OFF"><xts:string id="IDS_SELECT_CONNECT_SAPR3_COGUDAOUTERJOIN_OFF"/></utml:option>
  2005. <utml:option value="ON"><xts:string id="IDS_SELECT_CONNECT_SAPR3_COGUDAOUTERJOIN_ON"/></utml:option>
  2006. </utml:select>
  2007. </dp:section2>
  2008. </dp:input>
  2009. </out:if>
  2010. <dp:choice>
  2011. <dp:section1>
  2012. <utml:input type="checkbox" name="m_connection_background" utml:track="true"/>
  2013. </dp:section1>
  2014. <dp:section2>
  2015. <out:text><xts:string id="IDS_SELECT_CONNECT_SAPR3_BACKGROUND"/></out:text>
  2016. </dp:section2>
  2017. </dp:choice>
  2018. </lyt:section>
  2019. </lyt:layout>
  2020. <lyt:layout title="IDS_SELECT_CONNECT_SAPR3_DICTIONARY" style="1" border="yes">
  2021. <lyt:intro>
  2022. <xts:string id="IDS_SELECT_CONNECT_SAPR3_DICTIONARY_HINT"/>
  2023. </lyt:intro>
  2024. <lyt:section>
  2025. <dp:input>
  2026. <dp:section1>
  2027. <xts:string id="IDS_SELECT_CONNECT_SAPR3_DICTIONARY_LOCATION"/>
  2028. </dp:section1>
  2029. <dp:section2>
  2030. <utml:input type="text" name="m_connection_dictionary" size="53"/>
  2031. </dp:section2>
  2032. </dp:input>
  2033. </lyt:section>
  2034. </lyt:layout>
  2035. </out:template>
  2036. <out:template name="dcx-jdbc-generic">
  2037. <out:param name="form-read-only"/>
  2038. <out:param name="utml-form-name"/>
  2039. <script language="javascript">
  2040. var nameList = new Array();
  2041. var codeList = new Array();
  2042. var urlList = new Array();
  2043. var propList = new Array();
  2044. var driverList = new Array();
  2045. // The oldOnload would be the init() function called by other xts files.
  2046. // In order not to override the init() function, the JDBC init will be
  2047. // using a different name called initJDBCGeneric().
  2048. var oldOnload = window.onload;
  2049. window.onload = function() {
  2050. if (oldOnload) {
  2051. oldOnload();
  2052. }
  2053. initJDBCGeneric();
  2054. }
  2055. function initJDBCGeneric()
  2056. {
  2057. var frm = document.pform;
  2058. if (frm) {
  2059. // Initialize the default property list for supported JDBC data sources.
  2060. initJDBCDataSources();
  2061. if (frm.m_jdbc_connection_code == undefined &amp;&amp; frm.m_jdbc_connection_string.value == '') {
  2062. // This indicates we are creating a new data source. Initialize all the values to default.
  2063. initJDBCDefaultValues();
  2064. } else if (frm.m_jdbc_connection_code != undefined &amp;&amp; frm.m_jdbc_connection_code != ''){
  2065. // This is the case where we opened a saved connection. We will set the connection type based on
  2066. // its code and leave the rest of the property untouched. They were set in connections.js.
  2067. setJDBCTypeFromCode();
  2068. } else if (frm.m_jdbc_connection_code == undefined) {
  2069. setJDBCCodeFromType();
  2070. }
  2071. updateJDBCConnectionString();
  2072. }
  2073. }
  2074. function initJDBCDataSources()
  2075. {
  2076. <out:for-each select="/root/datasources/datasource/supportedDataSources/supportedDataSource">
  2077. nameList[<out:value-of select="(position() - 1)"/>] = '<out:value-of select="name"/>';
  2078. codeList[<out:value-of select="(position() - 1)"/>] = '<out:value-of select="subprotocol"/>';
  2079. urlList[<out:value-of select="(position() - 1)"/>] = '<out:value-of select="url"/>';
  2080. propList[<out:value-of select="(position() - 1)"/>] = '<out:value-of select="properties"/>';
  2081. driverList[<out:value-of select="(position() - 1)"/>] = '<out:value-of select="driver"/>';
  2082. </out:for-each>
  2083. }
  2084. function setJDBCTypeFromCode()
  2085. {
  2086. var frm = document.pform;
  2087. if (frm) {
  2088. for (var i=0;i&lt;codeList.length;i=i+1) {
  2089. if (frm.m_jdbc_connection_code == codeList[i]) {
  2090. frm.m_jdbc_connection_type.value = nameList[i];
  2091. break;
  2092. }
  2093. }
  2094. }
  2095. }
  2096. function setJDBCCodeFromType()
  2097. {
  2098. var frm = document.pform;
  2099. if (frm) {
  2100. for (var i=0;i&lt;nameList.length;i=i+1) {
  2101. if (frm.m_jdbc_connection_type.value == nameList[i]) {
  2102. frm.m_jdbc_connection_code = codeList[i];
  2103. break;
  2104. }
  2105. }
  2106. }
  2107. }
  2108. function initJDBCDefaultValues()
  2109. {
  2110. var frm = document.pform;
  2111. if (frm) {
  2112. frm.m_jdbc_connection_type.value =
  2113. '<out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource[1]/name"/>';
  2114. frm.m_jdbc_connection_code =
  2115. '<out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource[1]/subprotocol"/>';
  2116. frm.m_jdbc_connection_url.value =
  2117. '<out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource[1]/url"/>';
  2118. frm.m_jdbc_connection_properties.value =
  2119. '<out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource[1]/properties"/>';
  2120. frm.m_jdbc_driver_class.value =
  2121. '<out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource[1]/driver"/>';
  2122. frm.m_jdbc_connection_string.readOnly = 'true';
  2123. frm.m_connection_jdbc_sort_colseq.value = '';
  2124. }
  2125. }
  2126. function updateJDBCType()
  2127. {
  2128. var frm = document.pform;
  2129. if (frm) {
  2130. for (var i=0;i&lt;nameList.length;i=i+1) {
  2131. if (frm.m_jdbc_connection_type.value == nameList[i]) {
  2132. frm.m_jdbc_connection_code = codeList[i];
  2133. frm.m_jdbc_connection_url.value = urlList[i];
  2134. frm.m_jdbc_connection_properties.value = propList[i];
  2135. frm.m_jdbc_driver_class.value = driverList[i];
  2136. frm.m_connection_jdbc_sort_colseq.value = '';
  2137. break;
  2138. }
  2139. }
  2140. updateJDBCConnectionString();
  2141. }
  2142. }
  2143. function updateJDBCConnectionString()
  2144. {
  2145. var f = document.pform;
  2146. if (f) {
  2147. var connectString = ';LOCAL;JDBC;URL=';
  2148. var url = f.m_jdbc_connection_url.value;
  2149. connectString = connectString + url;
  2150. connectString = connectString + ';DRIVER_NAME=' + f.m_jdbc_driver_class.value + ';';
  2151. var properties = f.m_jdbc_connection_properties.value;
  2152. connectString = connectString + properties;
  2153. if (properties != '' &amp;&amp; properties.charAt(properties.length - 1) != ';')
  2154. {
  2155. connectString = connectString + ';';
  2156. }
  2157. if (f.m_connection_jdbc_sort_colseq.value != '') {
  2158. connectString += 'LOCALSORT=' + f.m_connection_jdbc_sort_colseq.value + ';LEVEL=' + f.m_connection_jdbc_sort_level.value;
  2159. }
  2160. f.m_jdbc_connection_string.value = connectString;
  2161. }
  2162. }
  2163. </script>
  2164. <utml:input onload="startUp()"/>
  2165. <lyt:layout style="1">
  2166. <lyt:section>
  2167. <dp:list>
  2168. <dp:section>
  2169. <dp:label for="ctrl_m_jdbc_connection_type"><xts:string id="IDS_PROP_CONN_TYPE"/></dp:label>
  2170. </dp:section>
  2171. <dp:section>
  2172. <out:choose>
  2173. <out:when test="count(/root/datasources/datasource/supportedDataSources/supportedDataSource) = 1">
  2174. <out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource/name"/>
  2175. <utml:input type="hidden" name="m_jdbc_connection_type">
  2176. <utml:value><out:value-of select="/root/datasources/datasource/supportedDataSources/supportedDataSource/name"/></utml:value>
  2177. </utml:input>
  2178. <script language="javascript">updateJDBCType();</script>
  2179. </out:when>
  2180. <out:otherwise>
  2181. <utml:select size="1" name="m_jdbc_connection_type" onchange="updateJDBCType()" id="ctrl_m_jdbc_connection_type">
  2182. <out:for-each select="/root/datasources/datasource/supportedDataSources/supportedDataSource">
  2183. <out:sort select="name"/>
  2184. <utml:option>
  2185. <utml:value><out:value-of select="name"/></utml:value>
  2186. <out:value-of select="name"/>
  2187. </utml:option>
  2188. </out:for-each>
  2189. </utml:select>
  2190. </out:otherwise>
  2191. </out:choose>
  2192. </dp:section>
  2193. </dp:list>
  2194. <dp:input>
  2195. <dp:section1 for="ctrl_m_jdbc_connection_url">
  2196. <xts:string id="IDS_SELECT_CONNECT_JDBC_URL"/>
  2197. </dp:section1>
  2198. <dp:section2>
  2199. <utml:input type="text" name="m_jdbc_connection_url" size="53" onchange="updateJDBCConnectionString()" id="ctrl_m_jdbc_connection_url"/>
  2200. </dp:section2>
  2201. </dp:input>
  2202. <dp:input>
  2203. <dp:section1 for="ctrl_m_jdbc_connection_properties">
  2204. <xts:string id="IDS_SELECT_CONNECT_JDBC_PROPERTY"/>
  2205. </dp:section1>
  2206. <dp:section2>
  2207. <utml:input type="text" name="m_jdbc_connection_properties" size="53" onchange="updateJDBCConnectionString()" id="ctrl_m_jdbc_connection_properties"/>
  2208. </dp:section2>
  2209. </dp:input>
  2210. <dp:input>
  2211. <dp:section1 for="ctrl_m_jdbc_driver_class">
  2212. <xts:string id="IDS_SELECT_CONNECT_JDBC_DRIVER_CLASS"/>
  2213. </dp:section1>
  2214. <dp:section2>
  2215. <utml:input type="text" name="m_jdbc_driver_class" size="53" onchange="updateJDBCConnectionString()" id="ctrl_m_jdbc_driver_class"/>
  2216. </dp:section2>
  2217. </dp:input>
  2218. <dp:input>
  2219. <dp:section1 for="ctrl_m_jdbc_connection_string">
  2220. <xts:string id="IDS_SELECT_CONNECT_JDBC_CONNECTION_STRING"/>
  2221. </dp:section1>
  2222. <dp:section2>
  2223. <utml:input type="text" name="m_jdbc_connection_string" size="200" style="border:none;background:transparent;" id="ctrl_m_jdbc_connection_string"/>
  2224. </dp:section2>
  2225. </dp:input>
  2226. </lyt:section>
  2227. </lyt:layout>
  2228. <lyt:layout style="1" border="yes" title="IDS_SELECT_CONNECT_JDBC_SORT_OPTIONS_HINT">
  2229. <lyt:section>
  2230. <dp:input>
  2231. <dp:section1 for="ctrl_m_connection_jdbc_sort_colseq">
  2232. <xts:string id="IDS_SELECT_CONNECT_JDBC_SORT_COLSEQ"/>
  2233. </dp:section1>
  2234. <dp:section2>
  2235. <utml:input type="text" name="m_connection_jdbc_sort_colseq" size="53" onkeyup="updateJdbcSortOptions()" onchange="updateJDBCConnectionString()" id="ctrl_m_connection_jdbc_sort_colseq"/>
  2236. </dp:section2>
  2237. </dp:input>
  2238. <dp:input>
  2239. <dp:section1 for="ctrl_m_connection_jdbc_sort_level">
  2240. <xts:string id="IDS_SELECT_CONNECT_JDBC_SORT_LEVEL"/>
  2241. </dp:section1>
  2242. <dp:section2>
  2243. <utml:select name="m_connection_jdbc_sort_level" size="1" onchange="updateJDBCConnectionString()" id="ctrl_m_connection_jdbc_sort_level">
  2244. <utml:default-value>PRIMARY</utml:default-value>
  2245. <utml:option value="PRIMARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_PRIMARY"/></utml:option>
  2246. <utml:option value="SECONDARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_SECONDARY"/></utml:option>
  2247. <utml:option value="TERTIARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_TERTIARY"/></utml:option>
  2248. <utml:option value="IDENTICAL"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_IDENTICAL"/></utml:option>
  2249. </utml:select>
  2250. </dp:section2>
  2251. </dp:input>
  2252. </lyt:section>
  2253. </lyt:layout>
  2254. </out:template>
  2255. <out:template name="dcx-filenet">
  2256. <out:param name="form-read-only"/>
  2257. <out:param name="utml-form-name"/>
  2258. <script language="javascript">
  2259. var repo_wmsg='<xts:string id="IDS_WARN_CHANGE_REPOSITORY_TYPE" encode="javascript"/>';
  2260. var repo_fs_none_msg='<xts:string id="IDS_PROP_CONN_REPOSITORY_FS_ROOT_NONE_NEW" encode="javascript"/>';
  2261. var repoTypeSelectInd = 0;
  2262. </script>
  2263. <lyt:layout style="1">
  2264. <lyt:section>
  2265. <dp:input>
  2266. <dp:section1 for="ctrl_m_connection_jdbc_driverclass"><xts:string id="IDS_PROP_CONN_REPOSITORY_TYPE"/></dp:section1>
  2267. <dp:section2>
  2268. <utml:select name="m_connection_jdbc_driverclass" size="1" onchange="updateRepositoryType()" id="ctrl_m_connection_jdbc_driverclass">
  2269. <out:choose>
  2270. <out:when test="/root/datasources/datasource[value='filenet']/defaultPlugin != ''">
  2271. <utml:default-value>
  2272. <out:value-of select="/root/datasources/datasource[value='filenet']/defaultPluginOption"/>
  2273. </utml:default-value>
  2274. </out:when>
  2275. <out:otherwise>
  2276. <utml:default-value>CMIS_FileNet</utml:default-value>
  2277. </out:otherwise>
  2278. </out:choose>
  2279. <utml:option value="CMIS_FileNet"><xts:string id="IDS_PROP_CONN_FILENET"/></utml:option>
  2280. <utml:option value="CMIS_CM8"><xts:string id="IDS_PROP_CONN_CM"/></utml:option>
  2281. <utml:option value="FileSystem"><xts:string id="IDS_PROP_CONN_FILESYSTEM"/></utml:option>
  2282. </utml:select>
  2283. </dp:section2>
  2284. </dp:input>
  2285. </lyt:section>
  2286. </lyt:layout>
  2287. <lyt:layout style="1" title="IDS_PROP_CONN_REPOSITORY_DETAILS" border="yes">
  2288. <lyt:section>
  2289. <utml:input type="hidden" name="m_connection_jdbc_url" value=""/>
  2290. <cf:dynamicDiv name="cmisDiv" style="display:none">
  2291. <dp:input>
  2292. <dp:section1>
  2293. <dp:list>
  2294. <dp:section>
  2295. <dp:label for="ctrl_cmisURL_input"><xts:string id="IDS_SELECT_CONNECT_FILENET_URL"/></dp:label>
  2296. </dp:section>
  2297. <dp:section>
  2298. <dp:hint wrap="wrap"><xts:string id="IDS_SELECT_CONNECT_FILENET_URL_HINT"/></dp:hint>
  2299. </dp:section>
  2300. </dp:list>
  2301. </dp:section1>
  2302. <dp:section2>
  2303. <utml:input type="text" name="cmisURL_input" size="53" utml:update="false" onchange="cmisURL_input_changed()" id="ctrl_cmisURL_input"/>
  2304. </dp:section2>
  2305. </dp:input>
  2306. </cf:dynamicDiv>
  2307. <cf:dynamicDiv name="fileSystemDiv" style="display:none">
  2308. <dp:input>
  2309. <dp:section1>
  2310. <dp:list>
  2311. <dp:section>
  2312. <dp:label for="ctrl_fsAliasRoot_select"><xts:string id="IDS_PROP_CONN_REPOSITORY_FS_ROOT"/></dp:label>
  2313. </dp:section>
  2314. <dp:section>
  2315. <dp:hint wrap="wrap"><xts:string id="IDS_PROP_CONN_REPOSITORY_FS_ROOT_HINT"/></dp:hint>
  2316. </dp:section>
  2317. </dp:list>
  2318. </dp:section1>
  2319. <dp:section2>
  2320. <utml:select name="fsAliasRoot_select" size="1" utml:update="false" onchange="fsAliasRoot_select_changed()" id="ctrl_fsAliasRoot_select">
  2321. <out:for-each select="/root/configuration/property[@name='aliasRoots']/*[local-name()='value']/item">
  2322. <utml:option>
  2323. <out:attribute name="value"><out:value-of select="name"/></out:attribute>
  2324. <utml:value><xsl:value-of select="name"/></utml:value>
  2325. <out:value-of select="name"/>
  2326. </utml:option>
  2327. </out:for-each>
  2328. </utml:select>
  2329. </dp:section2>
  2330. </dp:input>
  2331. </cf:dynamicDiv>
  2332. <dp:input>
  2333. <dp:section1>
  2334. <dp:list>
  2335. <dp:section>
  2336. <dp:label for="ctrl_m_connection_file"><xts:string id="IDS_SELECT_CONNECT_ROOT_PATH"/></dp:label>
  2337. </dp:section>
  2338. <dp:section>
  2339. <dp:hint wrap="wrap"><xts:string id="IDS_SELECT_CONNECT_ROOT_PATH_HINT"/></dp:hint>
  2340. </dp:section>
  2341. </dp:list>
  2342. </dp:section1>
  2343. <dp:section2>
  2344. <utml:input type="text" name="m_connection_file" size="53" id="ctrl_m_connection_file"/>
  2345. </dp:section2>
  2346. </dp:input>
  2347. <dp:input>
  2348. <dp:section1>
  2349. <dp:list>
  2350. <dp:section>
  2351. <dp:label for="m_connection_jdbc_parameters"><xts:string id="IDS_SELECT_CONNECT_REPOSITORY_CONNECTION_PARAMETERS"/></dp:label>
  2352. </dp:section>
  2353. <dp:section>
  2354. <dp:hint wrap="wrap"><xts:string id="IDS_SELECT_CONNECT_JDBC_CONNECTION_PARAMETERS_INTRODUCTION"/></dp:hint>
  2355. </dp:section>
  2356. </dp:list>
  2357. </dp:section1>
  2358. <dp:section2>
  2359. <utml:input type="text" name="m_connection_jdbc_parameters" size="100" id="ctrl_m_connection_jdbc_parameters"/>
  2360. </dp:section2>
  2361. </dp:input>
  2362. </lyt:section>
  2363. </lyt:layout>
  2364. </out:template>
  2365. <out:template name="dcx-jdbc-oracle">
  2366. <out:param name="form-read-only"/>
  2367. <out:param name="utml-form-name"/>
  2368. <lyt:layout style="1">
  2369. <lyt:section>
  2370. <dp:list>
  2371. <dp:section>
  2372. <dp:label id="ConnectionType_ID"><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_CONNECTION_TYPE"/></dp:label>
  2373. </dp:section>
  2374. </dp:list>
  2375. <utml:radio-group name="m_connection_jdbc_oracle_style">
  2376. <utml:default-value>serviceID</utml:default-value>
  2377. <dp:choice aria-labelledby="ConnectionType_ID">
  2378. <dp:section1>
  2379. <utml:input type="radio" name="m_connection_jdbc_oracle_style" value="serviceID" utml:track="true" onclick="updateJdbcOracle()" id="ctrl_m_connection_jdbc_oracle_style_serviceID"/>
  2380. </dp:section1>
  2381. <dp:section2 for="ctrl_m_connection_jdbc_oracle_style_serviceID">
  2382. <out:text><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_SERVICE_ID_PROPERTY_GROUP"/></out:text>
  2383. </dp:section2>
  2384. <dp:section1>
  2385. <utml:input type="radio" name="m_connection_jdbc_oracle_style" value="tnsNamesAlias" utml:track="true" onclick="updateJdbcOracle()" id="ctrl_m_connection_jdbc_oracle_style_tnsNamesAlias"/>
  2386. </dp:section1>
  2387. <dp:section2 for="ctrl_m_connection_jdbc_oracle_style_tnsNamesAlias">
  2388. <out:text><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_TNS_NAMES_ALIAS_PROPERTY_GROUP"/></out:text>
  2389. </dp:section2>
  2390. <dp:section1>
  2391. <utml:input type="radio" name="m_connection_jdbc_oracle_style" value="oracleNetDescriptor" utml:track="true" onclick="updateJdbcOracle()" id="ctrl_m_connection_jdbc_oracle_style_oracleNetDescriptor"/>
  2392. </dp:section1>
  2393. <dp:section2 for="ctrl_m_connection_jdbc_oracle_style_oracleNetDescriptor">
  2394. <out:text><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_NET_DESCRIPTOR_PROPERTY_GROUP"/></out:text>
  2395. </dp:section2>
  2396. </dp:choice>
  2397. </utml:radio-group>
  2398. <cf:dynamicDiv name="serviceID">
  2399. <lyt:layout style="1">
  2400. <lyt:section>
  2401. <dp:input>
  2402. <dp:section1>
  2403. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_DRIVER_TYPE"/>
  2404. </dp:section1>
  2405. <dp:section2>
  2406. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_THIN"/>
  2407. </dp:section2>
  2408. </dp:input>
  2409. <out:call-template name="dcx-jdbc-server-port-parameters">
  2410. <out:with-param name="form-read-only" select="$form-read-only"/>
  2411. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2412. </out:call-template>
  2413. <dp:input>
  2414. <dp:section1 for="ctrl_m_connection_oracle_service_id">
  2415. <xts:string id="IDS_SELECT_CONNECT_ORACLE_SERVICE_ID"/>
  2416. </dp:section1>
  2417. <dp:section2>
  2418. <utml:input type="text" name="m_connection_oracle_service_id" size="53" id="ctrl_m_connection_oracle_service_id">
  2419. <utml:value>
  2420. <out:value-of select="/root/*[local-name()='datasources' or local-name()='jdbcdatasources']/datasource[starts-with(value,'jdbc-')]/properties/property[value='m_connection_oracle_service_id']/default"/>
  2421. </utml:value>
  2422. </utml:input>
  2423. </dp:section2>
  2424. </dp:input>
  2425. </lyt:section>
  2426. </lyt:layout>
  2427. </cf:dynamicDiv>
  2428. <cf:dynamicDiv name="oracleNetDescriptor">
  2429. <lyt:layout style="1">
  2430. <lyt:section>
  2431. <dp:input>
  2432. <dp:section1 id="DriverType_ID">
  2433. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_DRIVER_TYPE"/>
  2434. </dp:section1>
  2435. <dp:section2>
  2436. <utml:radio-group name="m_connection_jdbc_oracle_driver_type">
  2437. <utml:default-value>thin</utml:default-value>
  2438. <dp:choice aria-labelledby="DriverType_ID">
  2439. <dp:section1>
  2440. <utml:input type="radio" name="m_connection_jdbc_oracle_driver_type" value="thin" utml:track="true" id="ctrl_m_connection_jdbc_oracle_driver_type_thin"/>
  2441. </dp:section1>
  2442. <dp:section2 for="ctrl_m_connection_jdbc_oracle_driver_type_thin">
  2443. <out:text><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_THIN"/></out:text>
  2444. </dp:section2>
  2445. <dp:section1>
  2446. <utml:input type="radio" name="m_connection_jdbc_oracle_driver_type" value="oci" utml:track="true" id="ctrl_m_connection_jdbc_oracle_driver_type_oci"/>
  2447. </dp:section1>
  2448. <dp:section2 for="ctrl_m_connection_jdbc_oracle_driver_type_oci">
  2449. <out:text><xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_OCI"/></out:text>
  2450. </dp:section2>
  2451. </dp:choice>
  2452. </utml:radio-group>
  2453. </dp:section2>
  2454. </dp:input>
  2455. <dp:input>
  2456. <dp:section1 for="ctrl_m_connection_oracle_net_descriptor">
  2457. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_NET_DESCRIPTOR"/>
  2458. </dp:section1>
  2459. <dp:section2>
  2460. <utml:textarea name="m_connection_oracle_net_descriptor" class="pTextarea" rows="5" cols="53" id="ctrl_m_connection_oracle_net_descriptor"/>
  2461. </dp:section2>
  2462. </dp:input>
  2463. </lyt:section>
  2464. </lyt:layout>
  2465. </cf:dynamicDiv>
  2466. <cf:dynamicDiv name="tnsNamesAlias">
  2467. <lyt:layout style="1">
  2468. <lyt:section>
  2469. <dp:input>
  2470. <dp:section1>
  2471. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_DRIVER_TYPE"/>
  2472. </dp:section1>
  2473. <dp:section2>
  2474. <xts:string id="IDS_SELECT_CONNECT_JDBC_ORACLE_OCI"/>
  2475. </dp:section2>
  2476. </dp:input>
  2477. <dp:input>
  2478. <dp:section1 for="ctrl_m_connection_oracle_tns_name">
  2479. <xts:string id="IDS_SELECT_CONNECT_ORACLE_TNS_NAME"/>
  2480. </dp:section1>
  2481. <dp:section2>
  2482. <utml:input type="text" name="m_connection_oracle_tns_name" size="53" id="ctrl_m_connection_oracle_tns_name"/>
  2483. </dp:section2>
  2484. </dp:input>
  2485. </lyt:section>
  2486. </lyt:layout>
  2487. </cf:dynamicDiv>
  2488. <out:call-template name="dcx-jdbc-connection-parameters">
  2489. <out:with-param name="form-read-only" select="$form-read-only"/>
  2490. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2491. </out:call-template>
  2492. </lyt:section>
  2493. </lyt:layout>
  2494. <out:call-template name="dcx-jdbc-cognos-properties">
  2495. <out:with-param name="form-read-only" select="$form-read-only"/>
  2496. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2497. </out:call-template>
  2498. </out:template>
  2499. <out:template name="dcx-jdbc-sql">
  2500. <out:param name="form-read-only"/>
  2501. <out:param name="utml-form-name"/>
  2502. <lyt:layout style="1">
  2503. <lyt:section>
  2504. <out:call-template name="dcx-jdbc-server-port-parameters">
  2505. <out:with-param name="form-read-only" select="$form-read-only"/>
  2506. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2507. </out:call-template>
  2508. <dp:input>
  2509. <dp:section1 for="ctrl_m_connection_sql_instance_name">
  2510. <xts:string id="IDS_SELECT_CONNECT_SQL_INSTANCE_NAME"/>
  2511. </dp:section1>
  2512. <dp:section2>
  2513. <utml:input type="text" name="m_connection_sql_instance_name" size="53" id="ctrl_m_connection_sql_instance_name"/>
  2514. </dp:section2>
  2515. </dp:input>
  2516. <dp:input>
  2517. <dp:section1 for="ctrl_m_connection_jdbc_database_name">
  2518. <xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME"/>
  2519. </dp:section1>
  2520. <dp:section2>
  2521. <utml:input type="text" name="m_connection_jdbc_database_name" size="53" id="ctrl_m_connection_jdbc_database_name"/>
  2522. </dp:section2>
  2523. </dp:input>
  2524. <dp:input>
  2525. <dp:section1 for="ctrl_m_connection_jdbc_connect_time">
  2526. <xts:string id="IDS_SELECT_CONNECT_LOGIN_TIMEOUT"/>
  2527. </dp:section1>
  2528. <dp:section2>
  2529. <utml:input type="text" name="m_connection_jdbc_connect_time" size="10" value="0" id="ctrl_m_connection_jdbc_connect_time"/>
  2530. </dp:section2>
  2531. </dp:input>
  2532. <out:call-template name="dcx-jdbc-connection-parameters">
  2533. <out:with-param name="form-read-only" select="$form-read-only"/>
  2534. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2535. </out:call-template>
  2536. </lyt:section>
  2537. </lyt:layout>
  2538. <out:call-template name="dcx-jdbc-cognos-properties">
  2539. <out:with-param name="form-read-only" select="$form-read-only"/>
  2540. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2541. </out:call-template>
  2542. </out:template>
  2543. <out:template name="dcx-jdbc-db2">
  2544. <out:param name="form-read-only"/>
  2545. <out:param name="utml-form-name"/>
  2546. <lyt:layout style="1">
  2547. <lyt:section>
  2548. <out:call-template name="dcx-jdbc-server-port-parameters">
  2549. <out:with-param name="form-read-only" select="$form-read-only"/>
  2550. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2551. </out:call-template>
  2552. <dp:input>
  2553. <dp:section1 for="ctrl_m_connection_jdbc_database_name">
  2554. <xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME"/>
  2555. </dp:section1>
  2556. <dp:section2>
  2557. <utml:input type="text" name="m_connection_jdbc_database_name" size="53" id="ctrl_m_connection_jdbc_database_name"/>
  2558. </dp:section2>
  2559. </dp:input>
  2560. <out:call-template name="dcx-jdbc-connection-parameters">
  2561. <out:with-param name="form-read-only" select="$form-read-only"/>
  2562. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2563. </out:call-template>
  2564. </lyt:section>
  2565. </lyt:layout>
  2566. <out:call-template name="dcx-jdbc-cognos-properties">
  2567. <out:with-param name="form-read-only" select="$form-read-only"/>
  2568. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2569. </out:call-template>
  2570. </out:template>
  2571. <out:template name="dcx-jdbc-teradata">
  2572. <out:param name="form-read-only"/>
  2573. <out:param name="utml-form-name"/>
  2574. <lyt:layout style="1">
  2575. <lyt:section>
  2576. <out:call-template name="dcx-jdbc-server-port-parameters">
  2577. <out:with-param name="form-read-only" select="$form-read-only"/>
  2578. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2579. </out:call-template>
  2580. <dp:input>
  2581. <dp:section1 for="ctrl_m_connection_jdbc_database_name">
  2582. <xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME"/>
  2583. </dp:section1>
  2584. <dp:section2>
  2585. <utml:input type="text" name="m_connection_jdbc_database_name" size="53" id="ctrl_m_connection_jdbc_database_name"/>
  2586. </dp:section2>
  2587. </dp:input>
  2588. <out:call-template name="dcx-jdbc-connection-parameters">
  2589. <out:with-param name="form-read-only" select="$form-read-only"/>
  2590. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2591. </out:call-template>
  2592. </lyt:section>
  2593. </lyt:layout>
  2594. <out:call-template name="dcx-jdbc-cognos-properties">
  2595. <out:with-param name="form-read-only" select="$form-read-only"/>
  2596. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2597. </out:call-template>
  2598. </out:template>
  2599. <out:template name="dcx-jdbc-netezza">
  2600. <out:param name="form-read-only"/>
  2601. <out:param name="utml-form-name"/>
  2602. <lyt:layout style="1">
  2603. <lyt:section>
  2604. <out:call-template name="dcx-jdbc-server-port-parameters">
  2605. <out:with-param name="form-read-only" select="$form-read-only"/>
  2606. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2607. </out:call-template>
  2608. <dp:input>
  2609. <dp:section1 for="ctrl_m_connection_jdbc_database_name">
  2610. <xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME"/>
  2611. </dp:section1>
  2612. <dp:section2>
  2613. <utml:input type="text" name="m_connection_jdbc_database_name" size="53" id="ctrl_m_connection_jdbc_database_name"/>
  2614. </dp:section2>
  2615. </dp:input>
  2616. <out:call-template name="dcx-jdbc-connection-parameters">
  2617. <out:with-param name="form-read-only" select="$form-read-only"/>
  2618. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2619. </out:call-template>
  2620. </lyt:section>
  2621. </lyt:layout>
  2622. <out:call-template name="dcx-jdbc-cognos-properties">
  2623. <out:with-param name="form-read-only" select="$form-read-only"/>
  2624. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  2625. </out:call-template>
  2626. </out:template>
  2627. <out:template name="dcx-jdbc-server-port-parameters">
  2628. <out:param name="form-read-only"/>
  2629. <out:param name="utml-form-name"/>
  2630. <dp:input>
  2631. <dp:section1 for="ctrl_m_connection_servername">
  2632. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE"/>
  2633. </dp:section1>
  2634. <dp:section2>
  2635. <utml:input type="text" name="m_connection_servername" size="53" id="ctrl_m_connection_servername"/>
  2636. </dp:section2>
  2637. </dp:input>
  2638. <dp:input>
  2639. <dp:section1 for="ctrl_m_connection_port">
  2640. <xts:string id="IDS_SELECT_CONNECT_PORTNUMBER"/>
  2641. </dp:section1>
  2642. <dp:section2>
  2643. <utml:input type="text" name="m_connection_port" size="10" id="ctrl_m_connection_port">
  2644. <utml:value>
  2645. <out:value-of select="/root/*[local-name()='datasources' or local-name()='jdbcdatasources']/datasource[starts-with(value,'jdbc-')]/properties/property[value='m_connection_port']/default"/>
  2646. </utml:value>
  2647. </utml:input>
  2648. </dp:section2>
  2649. </dp:input>
  2650. </out:template>
  2651. <out:template name="dcx-jdbc-connection-parameters">
  2652. <out:param name="form-read-only"/>
  2653. <out:param name="utml-form-name"/>
  2654. <dp:list>
  2655. <dp:section>
  2656. <dp:label for="ctrl_m_connection_jdbc_parameters"><xts:string id="IDS_SELECT_CONNECT_JDBC_CONNECTION_PARAMETERS"/></dp:label>
  2657. </dp:section>
  2658. <dp:section>
  2659. <dp:hint wrap="wrap"><xts:string id="IDS_SELECT_CONNECT_JDBC_CONNECTION_PARAMETERS_INTRODUCTION"/></dp:hint>
  2660. </dp:section>
  2661. <dp:section>
  2662. <utml:input type="text" name="m_connection_jdbc_parameters" size="100" id="ctrl_m_connection_jdbc_parameters"/>
  2663. </dp:section>
  2664. </dp:list>
  2665. </out:template>
  2666. <out:template name="dcx-jdbc-cognos-properties">
  2667. <out:param name="form-read-only"/>
  2668. <out:param name="utml-form-name"/>
  2669. <lyt:layout style="1" border="yes" title="IDS_SELECT_CONNECT_JDBC_SORT_OPTIONS_HINT" >
  2670. <lyt:section>
  2671. <dp:input>
  2672. <dp:section1 for="ctrl_m_connection_jdbc_sort_colseq">
  2673. <xts:string id="IDS_SELECT_CONNECT_JDBC_SORT_COLSEQ"/>
  2674. </dp:section1>
  2675. <dp:section2>
  2676. <utml:input type="text" name="m_connection_jdbc_sort_colseq" size="53" onkeyup="updateJdbcSortOptions()" id="ctrl_m_connection_jdbc_sort_colseq"/>
  2677. </dp:section2>
  2678. </dp:input>
  2679. <dp:input>
  2680. <dp:section1 for="ctrl_m_connection_jdbc_sort_level">
  2681. <xts:string id="IDS_SELECT_CONNECT_JDBC_SORT_LEVEL"/>
  2682. </dp:section1>
  2683. <dp:section2>
  2684. <utml:select name="m_connection_jdbc_sort_level" size="1" id="ctrl_m_connection_jdbc_sort_level">
  2685. <utml:default-value>PRIMARY</utml:default-value>
  2686. <utml:option value="PRIMARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_PRIMARY"/></utml:option>
  2687. <utml:option value="SECONDARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_SECONDARY"/></utml:option>
  2688. <utml:option value="TERTIARY"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_TERTIARY"/></utml:option>
  2689. <utml:option value="IDENTICAL"><xts:string id="IDS_SELECT_CONNECT_JDBC_SORTLEVEL_IDENTICAL"/></utml:option>
  2690. </utml:select>
  2691. </dp:section2>
  2692. </dp:input>
  2693. </lyt:section>
  2694. </lyt:layout>
  2695. </out:template>
  2696. <out:template name="dcx-xml-template">
  2697. <out:param name="form-read-only"/>
  2698. <out:param name="utml-form-name"/>
  2699. <lyt:layout style="1">
  2700. <lyt:section>
  2701. <dp:input>
  2702. <dp:section1 for="ctrl_m_connection_database">
  2703. <xts:string id="IDS_SELECT_CONNECT_OTHER_CONNECTSTRING"/>
  2704. </dp:section1>
  2705. <dp:section2>
  2706. <utml:input type="text" name="m_connection_database" size="53" id="ctrl_m_connection_database"/>
  2707. </dp:section2>
  2708. </dp:input>
  2709. </lyt:section>
  2710. </lyt:layout>
  2711. </out:template>
  2712. <out:template name="dcx-other-template">
  2713. <out:param name="form-read-only"/>
  2714. <out:param name="utml-form-name"/>
  2715. <lyt:layout style="1">
  2716. <lyt:section>
  2717. <dp:input>
  2718. <dp:section1 for="ctrl_m_other_connectionString">
  2719. <xts:string id="IDS_SELECT_CONNECT_OTHER_CONNECTSTRING"/>
  2720. </dp:section1>
  2721. <dp:section2>
  2722. <utml:input type="text" name="m_other_connectionString" size="53" id="ctrl_m_other_connectionString"/>
  2723. </dp:section2>
  2724. </dp:input>
  2725. </lyt:section>
  2726. </lyt:layout>
  2727. </out:template>
  2728. <out:template name="gen-create-signon">
  2729. <out:param name="form-read-only"/>
  2730. <out:param name="utml-form-name"/>
  2731. <out:param name="enable-all" select="'true'"/>
  2732. <out:param name="connectionType" select="''"/>
  2733. <out:param name="authenticationType" select="''"/>
  2734. <script language="javascript">
  2735. function clearEncryptedPassword()
  2736. {
  2737. if (document.pform.passwordEncrypted)
  2738. document.pform.passwordEncrypted.value = '';
  2739. }
  2740. </script>
  2741. <out:variable name="default_signon_checked">
  2742. <out:choose>
  2743. <out:when test="(not(/root/env/param[@name='changed_m_connection_default_signon']) or /root/env/param[@name='changed_m_connection_default_signon']='0') or /root/env/param[@name='m_connection_default_signon']">true</out:when>
  2744. <out:otherwise>false</out:otherwise>
  2745. </out:choose>
  2746. </out:variable>
  2747. <dp:choice>
  2748. <dp:section1>
  2749. <out:choose>
  2750. <out:when test="$connectionType = 'json'">
  2751. <utml:input type="checkbox" name="m_connection_default_signon" utml:track="true" id="ctrl_m_connection_default_signon">
  2752. <out:attribute name="disabled">disabled</out:attribute>
  2753. <out:if test="$default_signon_checked='true'">
  2754. <out:attribute name="checked">checked</out:attribute>
  2755. </out:if>
  2756. </utml:input>
  2757. </out:when>
  2758. <out:otherwise>
  2759. <utml:input type="checkbox" name="m_connection_default_signon" onclick="toggleCreateSignon();" utml:track="true" id="ctrl_m_connection_default_signon">
  2760. <out:if test="(not(key('env-param','m_connection_use_userid')) and contains(' db2 jdbc-db2 sql jdbc-sql dbtwoolap tm1R tm1 sql2005 sql2008 sql2012-2014 sqlodbc oracle jdbc-oracle jdbc-generic lob-jdbc filenet netezza jdbc-netezza odbc openEdge sybase sybase_ct15 informix ', concat(' ',key('env-param','m_connection_type'),' '))) or $enable-all!='true'">
  2761. <out:attribute name="disabled">disabled</out:attribute>
  2762. </out:if>
  2763. <out:if test="$default_signon_checked='true'">
  2764. <out:attribute name="checked">checked</out:attribute>
  2765. </out:if>
  2766. </utml:input>
  2767. </out:otherwise>
  2768. </out:choose>
  2769. </dp:section1>
  2770. <dp:section2 for="ctrl_m_connection_default_signon">
  2771. <out:text><xts:string id="IDS_SELECT_CONNECT_DEFAULT_SIGNON_HINT"/></out:text>
  2772. </dp:section2>
  2773. <dp:section3>
  2774. <dp:input>
  2775. <dp:section1 for="ctrl_m_connection_userid">
  2776. <out:choose>
  2777. <out:when test="$connectionType='json'">
  2778. <out:choose>
  2779. <out:when test="$authenticationType='APIKey'">
  2780. <xts:string id="IDS_SELECT_CONNECT_KEY"/>
  2781. </out:when>
  2782. <out:when test="$authenticationType='OAuth1.0'">
  2783. <xts:string id="IDS_SELECT_CONNECT_CONSUMER_KEY"/>
  2784. </out:when>
  2785. <out:when test="$authenticationType='OAuth2.0'">
  2786. <xts:string id="IDS_SELECT_CONNECT_CLIENT_ID"/>
  2787. </out:when>
  2788. <out:otherwise>
  2789. <xts:string id="IDS_SELECT_CONNECT_USERID"/>
  2790. </out:otherwise>
  2791. </out:choose>
  2792. </out:when>
  2793. <out:otherwise>
  2794. <xts:string id="IDS_SELECT_CONNECT_USERID"/>
  2795. </out:otherwise>
  2796. </out:choose>
  2797. </dp:section1>
  2798. <dp:section2>
  2799. <utml:input type="text" name="m_connection_userid" size="53" id="ctrl_m_connection_userid">
  2800. <out:if test="$enable-all!='true'">
  2801. <out:attribute name="disabled">disabled</out:attribute>
  2802. </out:if>
  2803. </utml:input>
  2804. </dp:section2>
  2805. </dp:input>
  2806. <dp:input>
  2807. <dp:section1 for="ctrl_m_connection_password">
  2808. <out:choose>
  2809. <out:when test="$connectionType='json'">
  2810. <out:choose>
  2811. <out:when test="$authenticationType='APIKey'">
  2812. <xts:string id="IDS_SELECT_CONNECT_VALUE"/>
  2813. </out:when>
  2814. <out:when test="$authenticationType='OAuth1.0'">
  2815. <xts:string id="IDS_SELECT_CONNECT_CONSUMER_SECRET"/>
  2816. </out:when>
  2817. <out:when test="$authenticationType='OAuth2.0'">
  2818. <xts:string id="IDS_SELECT_CONNECT_CLIENT_SECRET"/>
  2819. </out:when>
  2820. <out:otherwise>
  2821. <xts:string id="IDS_SELECT_CONNECT_PASSWORD"/>
  2822. </out:otherwise>
  2823. </out:choose>
  2824. </out:when>
  2825. <out:otherwise>
  2826. <xts:string id="IDS_SELECT_CONNECT_PASSWORD"/>
  2827. </out:otherwise>
  2828. </out:choose>
  2829. </dp:section1>
  2830. <dp:section2>
  2831. <utml:input type="password" name="m_connection_password" size="53" utml:update="false" onchange="clearEncryptedPassword()" autocomplete="off" id="ctrl_m_connection_password">
  2832. <out:if test="$enable-all!='true'">
  2833. <out:attribute name="disabled">disabled</out:attribute>
  2834. </out:if>
  2835. <out:attribute name="value">
  2836. <out:choose>
  2837. <out:when test="key('env-param','passwordEncrypted')!=''">********</out:when>
  2838. <out:otherwise></out:otherwise>
  2839. </out:choose>
  2840. </out:attribute>
  2841. </utml:input>
  2842. </dp:section2>
  2843. </dp:input>
  2844. <dp:input>
  2845. <dp:section1 for="ctrl_m_connection_confirm_password">
  2846. <out:choose>
  2847. <out:when test="$connectionType='json'">
  2848. <out:choose>
  2849. <out:when test="$authenticationType='APIKey'">
  2850. <xts:string id="IDS_SELECT_CONNECT_CONFIRM_VALUE"/>
  2851. </out:when>
  2852. <out:when test="$authenticationType='OAuth1.0'">
  2853. <xts:string id="IDS_SELECT_CONNECT_CONFIRM_CONSUMER_SECRET"/>
  2854. </out:when>
  2855. <out:when test="$authenticationType='OAuth2.0'">
  2856. <xts:string id="IDS_SELECT_CONNECT_CONFIRM_CLIENT_SECRET"/>
  2857. </out:when>
  2858. <out:otherwise>
  2859. <xts:string id="IDS_SELECT_CONNECT_CONFIRMPASSWORD"/>
  2860. </out:otherwise>
  2861. </out:choose>
  2862. </out:when>
  2863. <out:otherwise>
  2864. <xts:string id="IDS_SELECT_CONNECT_CONFIRMPASSWORD"/>
  2865. </out:otherwise>
  2866. </out:choose>
  2867. </dp:section1>
  2868. <dp:section2>
  2869. <utml:input type="password" name="m_connection_confirm_password" size="53" utml:update="false" onchange="clearEncryptedPassword()" autocomplete="off" id="ctrl_m_connection_confirm_password">
  2870. <out:if test="$enable-all!='true'">
  2871. <out:attribute name="disabled">disabled</out:attribute>
  2872. </out:if>
  2873. <out:attribute name="value">
  2874. <out:choose>
  2875. <out:when test="key('env-param','passwordEncrypted')!=''">********</out:when>
  2876. <out:otherwise></out:otherwise>
  2877. </out:choose>
  2878. </out:attribute>
  2879. </utml:input>
  2880. </dp:section2>
  2881. </dp:input>
  2882. </dp:section3>
  2883. </dp:choice>
  2884. </out:template>
  2885. <out:template name="get-validations">
  2886. <out:param name="connection-type"/>
  2887. <out:param name="connection-variant"/>
  2888. <out:param name="test" select="false()"/>
  2889. <out:variable name="ODBC_UI" select="contains(' composite virtualviewmanager odbc openEdge sqlodbc redbrick teradata netezza sybaseIQ ', concat(' ',$connection-type,' '))"/>
  2890. <out:variable name="m1">
  2891. <out:choose>
  2892. <out:when test="$connection-type='db2'">
  2893. <xts:string id="IDS_SELECT_CONNECT_DB2_DATABASE" encode="javascript"/>
  2894. </out:when>
  2895. <out:when test="$connection-type='msas_xmla'">
  2896. <xts:string id="IDS_SELECT_CONNECT_SERVER_MSAS_XMLA" encode="javascript"/>
  2897. </out:when>
  2898. <out:when test="contains(' cognosnow consolidation contributor contributorSeries7 dbtwoolap msanalysis2017 msanalysis2016 msanalysis2014 msanalysis2012 msanalysis2008 msanalysis2005 sql sql2005 sql2008 sql2012-2014 ' , concat(' ',$connection-type,' '))">
  2899. <xts:string id="IDS_SELECT_CONNECT_DATASOURCE" encode="javascript"/>
  2900. </out:when>
  2901. <out:when test="$connection-type = 'oracle'">
  2902. <xts:string id="IDS_SELECT_CONNECT_SQLNET_CONNECTSTRING" encode="javascript"/>
  2903. </out:when>
  2904. <out:when test="$connection-type = 'powercube'">
  2905. <xts:string id="IDS_SELECT_CONNECT_POWERCUBE_WIN_LOCATION" encode="javascript"/>
  2906. </out:when>
  2907. <out:when test="$ODBC_UI">
  2908. <xts:string id="IDS_SELECT_CONNECT_ODBC_DATASOURCE" encode="javascript"/>
  2909. </out:when>
  2910. <out:when test="$connection-type = 'sybase' or $connection-type = 'sybase_ct15'">
  2911. <xts:string id="IDS_SELECT_CONNECT_SYBASE_SERVER" encode="javascript"/>
  2912. </out:when>
  2913. <out:when test="$connection-type = 'sap' and key('env-param','m_connection_sap_type') = 'messageServer'">
  2914. <xts:string id="IDS_SELECT_CONNECT_SAP_MESSAGE_LABEL" encode="javascript"/>
  2915. </out:when>
  2916. <out:when test="$connection-type = 'sap' and key('env-param','m_connection_sap_type') = 'destination'">
  2917. <xts:string id="IDS_SELECT_CONNECT_SAP_DESTINATION_LABEL" encode="javascript"/>
  2918. </out:when>
  2919. <out:when test="$connection-type = 'sap'">
  2920. <xts:string id="IDS_SELECT_CONNECT_SAP_APPLICATION_LABEL" encode="javascript"/>
  2921. </out:when>
  2922. <out:when test="$connection-type = 'sapR3' or $connection-type = 'sapECC'">
  2923. <xts:string id="IDS_SELECT_CONNECT_SAPR3_HOSTNAME" encode="javascript"/>
  2924. </out:when>
  2925. <out:when test="$connection-type = 'informix'">
  2926. <xts:string id="IDS_SELECT_CONNECT_INFORMIX_DATABASE" encode="javascript"/>
  2927. </out:when>
  2928. <out:when test="$connection-type = 'tm1' or $connection-type = 'tm1R'">
  2929. <xts:string id="IDS_SELECT_CONNECT_SERVER_TM" encode="javascript"/>
  2930. </out:when>
  2931. <out:when test="$connection-type = 'odata'">
  2932. <xts:string id="IDS_SELECT_CONNECT_SERVICE_ROOT_URI" encode="javascript"/>
  2933. </out:when>
  2934. </out:choose>
  2935. </out:variable>
  2936. <out:variable name="m11">
  2937. <out:choose>
  2938. <out:when test="$connection-type='dbtwoolap'">
  2939. <xts:string id="IDS_SELECT_CONNECT_DB2OLAP_DBNAME" encode="javascript"/>
  2940. </out:when>
  2941. </out:choose>
  2942. </out:variable>
  2943. var m1 = "<out:value-of select="$m1"/>";
  2944. var m2 = "<xts:string id="IDS_SELECT_CONNECT_DATABASE_NAME" encode="javascript"/>";
  2945. var m3 = "<xts:string id="IDS_SELECT_CONNECT_SYSTEM_NUMBER" encode="javascript"/>";
  2946. var m4 = "<xts:string id="IDS_SELECT_CONNECT_LOGON_GROUP" encode="javascript"/>";
  2947. var m5 = "<xts:string id="IDS_SELECT_CONNECT_CLIENT_NUMBER" encode="javascript"/>";
  2948. var m6 = "<xts:string id="IDS_SELECT_CONNECT_OTHER_CONNECTSTRING" encode="javascript"/>";
  2949. var m7 = "<xts:string id="IDS_SELECT_CONNECT_USERID" encode="javascript"/>";
  2950. var m8 = "<xts:string id="IDS_ERR_0003_PASSWORD_VERIF_FAILED" encode="javascript"/>";
  2951. var m9 = "<xts:string id="IDS_SELECT_CONNECT_SYSTEM_ID" encode="javascript"/>";
  2952. var m10 = "<xts:string id="IDS_SELECT_CONNECT_CONTRIBUTOR_PADID" encode="javascript"/>";
  2953. var m11 = "<out:value-of select="$m11"/>";
  2954. var m12 = "<xts:string id="IDS_SELECT_CONNECT_POWERCUBE_UNIX_LOCATION" encode="javascript"/>";
  2955. var m13 = "<xts:string id="IDS_SELECT_CONNECT_HOST_TM" encode="javascript"/>";
  2956. var m14 = "<xts:string id="IDS_SELECT_CONNECT_FILE_NAME_PATH" encode="javascript"/>";
  2957. var m15 = "<xts:string id="IDS_SELECT_CONNECT_PORTNUMBER" encode="javascript"/>";
  2958. var m16 = "<xts:string id="IDS_SELECT_CONNECT_PASSWORD" encode="javascript"/>"
  2959. var m17 = "<xts:string id="IDS_SELECT_CONNECT_URL" encode="javascript"/>";
  2960. var m18 = "<xts:string id="IDS_SELECT_CONNECT_SCHEMA" encode="javascript"/>";
  2961. var m19 = "<xts:string id="IDS_SELECT_CONNECT_KEY" encode="javascript"/>";
  2962. var m20 = "<xts:string id="IDS_SELECT_CONNECT_VALUE" encode="javascript"/>";
  2963. var m21 = "<xts:string id="IDS_SELECT_CONNECT_SITE" encode="javascript"/>";
  2964. var m22 = "<xts:string id="IDS_SELECT_CONNECT_CONSUMER_KEY" encode="javascript"/>";
  2965. var m23 = "<xts:string id="IDS_SELECT_CONNECT_CONSUMER_SECRET" encode="javascript"/>";
  2966. var m24 = "<xts:string id="IDS_SELECT_CONNECT_TEMPORARY_TOKEN_ENDPOINT" encode="javascript"/>";
  2967. var m25 = "<xts:string id="IDS_SELECT_CONNECT_AUTHORIZATION_ENDPOINT" encode="javascript"/>";
  2968. var m26 = "<xts:string id="IDS_SELECT_CONNECT_TOKEN_ENDPOINT" encode="javascript"/>";
  2969. var m27 = "<xts:string id="IDS_SELECT_CONNECT_CLIENT_ID" encode="javascript"/>";
  2970. var m28 = "<xts:string id="IDS_SELECT_CONNECT_CLIENT_SECRET" encode="javascript"/>";
  2971. var m29 = "<xts:string id="IDS_SELECT_CONNECT_SCOPE" encode="javascript"/>"
  2972. <out:if test="$connection-type = 'filenet'">
  2973. var filenetMeta = [
  2974. {fieldName: "m_connection_jdbc_url", warningMessage: "<xts:string id="IDS_SELECT_CONNECT_FILENET_URL" encode="javascript"/>"},
  2975. {fieldName: "m_connection_jdbc_driverclass", warningMessage: "<xts:string id="IDS_SELECT_CONNECT_JDBC_DRIVER_CLASS" encode="javascript"/>"},
  2976. {fieldName: "m_connection_file", warningMessage: "<xts:string id="IDS_SELECT_CONNECT_ROOT_PATH" encode="javascript"/>"}
  2977. ];
  2978. if (f.m_connection_jdbc_driverclass.value == 'FileSystem') {
  2979. filenetMeta[0].warningMessage="<xts:string id="IDS_PROP_CONN_REPOSITORY_FS_ROOT" encode="javascript"/>";
  2980. if (f.fsAliasRoot_select.length==0) {
  2981. window.alert("<xts:string id="IDS_PROP_CONN_REPOSITORY_FS_ROOT_NONE" encode="javascript"/>");
  2982. f.fsAliasRoot_select.focus();
  2983. return false;
  2984. }
  2985. }
  2986. for (var i=0; i&lt;filenetMeta.length; i++){
  2987. var item = filenetMeta[i];
  2988. var field = f[item.fieldName];
  2989. var message = item.warningMessage;
  2990. if (field){
  2991. if (item.fieldName == 'm_connection_file' &amp;&amp; f.m_connection_jdbc_driverclass.value == 'FileSystem') {
  2992. if (!checkReservedChar(field, message)){
  2993. return false;
  2994. }
  2995. } else {
  2996. if (!checkMandatory(field, message) || !checkReservedChar(field, message)){
  2997. return false;
  2998. }
  2999. }
  3000. }
  3001. }
  3002. </out:if>
  3003. <out:if test="$connection-type='odata'">
  3004. if (f.m_connection_service_root_URI)
  3005. {
  3006. if (!checkMandatory(f.m_connection_service_root_URI, m1))
  3007. {
  3008. return false;
  3009. }
  3010. if (!checkReservedChar(f.m_connection_service_root_URI, m1))
  3011. {
  3012. return false;
  3013. }
  3014. }
  3015. </out:if>
  3016. <out:if test="$connection-type='json'">
  3017. var id_label = '';
  3018. var pwd_label = '';
  3019. if (f.m_connection_url)
  3020. {
  3021. if (!checkMandatory(f.m_connection_url, m17))
  3022. {
  3023. return false;
  3024. }
  3025. if (!checkReservedChar(f.m_connection_url, m17))
  3026. {
  3027. return false;
  3028. }
  3029. if(!checkURLFormat(f.m_connection_url))
  3030. {
  3031. return false;
  3032. }
  3033. }
  3034. if (f.m_connection_schema)
  3035. {
  3036. if (!checkReservedChar(f.m_connection_schema, m18))
  3037. {
  3038. return false;
  3039. }
  3040. }
  3041. if (f.m_connection_authentication_type.value == 'Basic')
  3042. {
  3043. id_label = m7;
  3044. pwd_label = m16;
  3045. }
  3046. if (f.m_connection_authentication_type.value == 'APIKey')
  3047. {
  3048. id_label = m19;
  3049. pwd_label = m20;
  3050. }
  3051. if (f.m_connection_authentication_type.value == 'OAuth1.0')
  3052. {
  3053. id_label = m22;
  3054. pwd_label = m23;
  3055. if (f.m_connection_temporary_token_endpoint) {
  3056. if(!checkEndpointFormat(f.m_connection_temporary_token_endpoint))
  3057. {
  3058. return false;
  3059. }
  3060. if (!checkMandatory(f.m_connection_temporary_token_endpoint, m24))
  3061. {
  3062. return false;
  3063. }
  3064. if (!checkReservedChar(f.m_connection_temporary_token_endpoint, m24))
  3065. {
  3066. return false;
  3067. }
  3068. }
  3069. }
  3070. if (f.m_connection_authentication_type.value == 'OAuth2.0')
  3071. {
  3072. id_label = m27;
  3073. pwd_label = m28;
  3074. if (f.m_connection_scope) {
  3075. if (!checkReservedChar(f.m_connection_scope, m29))
  3076. {
  3077. return false;
  3078. }
  3079. }
  3080. }
  3081. if ( f.m_connection_authentication_type.value != 'None')
  3082. {
  3083. if(f.m_connection_userid)
  3084. {
  3085. if (!checkMandatory(f.m_connection_userid, id_label))
  3086. {
  3087. return false;
  3088. }
  3089. if (!checkReservedChar(f.m_connection_userid, id_label))
  3090. {
  3091. return false;
  3092. }
  3093. }
  3094. if(f.m_connection_password)
  3095. {
  3096. if (!checkMandatory(f.m_connection_password, pwd_label))
  3097. {
  3098. return false;
  3099. }
  3100. if (!checkReservedChar(f.m_connection_password, pwd_label))
  3101. {
  3102. return false;
  3103. }
  3104. }
  3105. if (f.m_connection_password.value != f.m_connection_confirm_password.value)
  3106. {
  3107. alert(m8);
  3108. return false;
  3109. }
  3110. }
  3111. if (f.m_connection_authentication_type.value.indexOf('OAuth') > -1)
  3112. {
  3113. if (f.m_connection_authorization_endpoint) {
  3114. if(!checkEndpointFormat(f.m_connection_authorization_endpoint))
  3115. {
  3116. return false;
  3117. }
  3118. if (!checkMandatory(f.m_connection_authorization_endpoint, m25))
  3119. {
  3120. return false;
  3121. }
  3122. if (!checkReservedChar(f.m_connection_authorization_endpoint, m25))
  3123. {
  3124. return false;
  3125. }
  3126. }
  3127. if (f.m_connection_token_endpoint) {
  3128. if(!checkEndpointFormat(f.m_connection_token_endpoint))
  3129. {
  3130. return false;
  3131. }
  3132. if (!checkMandatory(f.m_connection_token_endpoint, m26))
  3133. {
  3134. return false;
  3135. }
  3136. if (!checkReservedChar(f.m_connection_token_endpoint, m26))
  3137. {
  3138. return false;
  3139. }
  3140. }
  3141. }
  3142. </out:if>
  3143. <out:if test="contains(' consolidation contributorSeries7 tm1 tm1R dbtwoolap msanalysis2017 msanalysis2016 msanalysis2014 msanalysis2012 msanalysis2008 msanalysis2005 msas_xmla ' ,concat(' ',$connection-type,' '))">
  3144. <out:if test="$connection-type='tm1' or $connection-type='tm1R'">
  3145. if (f.m_connection_hostname)
  3146. {
  3147. if (!checkMandatory(f.m_connection_hostname, m13))
  3148. {
  3149. return false;
  3150. }
  3151. if (!checkReservedChar(f.m_connection_hostname, m13))
  3152. {
  3153. return false;
  3154. }
  3155. }
  3156. </out:if>
  3157. if (f.m_connection_servername)
  3158. {
  3159. if (!checkMandatory(f.m_connection_servername, m1))
  3160. {
  3161. return false;
  3162. }
  3163. if (!checkReservedChar(f.m_connection_servername, m1))
  3164. {
  3165. return false;
  3166. }
  3167. <out:if test="contains('msanalysis2017 msanalysis2016 msanalysis2014 msanalysis2012 msanalysis2008 msanalysis2005' ,$connection-type)">
  3168. if (!checkInvalidChar(f.m_connection_servername, m1, '\\'))
  3169. {
  3170. return false;
  3171. }
  3172. </out:if>
  3173. }
  3174. </out:if>
  3175. <out:if test="contains('cognosnow' ,$connection-type)">
  3176. if (f.m_connection_servername)
  3177. {
  3178. if (!checkMandatory(f.m_connection_servername, m1))
  3179. {
  3180. return false;
  3181. }
  3182. if (!checkReservedChar(f.m_connection_servername, m1))
  3183. {
  3184. return false;
  3185. }
  3186. }
  3187. if (f.m_connection_file)
  3188. {
  3189. if (!checkMandatory(f.m_connection_file, m14))
  3190. {
  3191. return false;
  3192. }
  3193. if (!checkReservedChar(f.m_connection_file, m14))
  3194. {
  3195. return false;
  3196. }
  3197. if (!checkMandatoryStartingChar(f.m_connection_file, m14, '/'))
  3198. {
  3199. return false;
  3200. }
  3201. }
  3202. </out:if>
  3203. <!-- javascript validation specific to the port number field shown for these 3 types of connection -->
  3204. <out:if test="contains('consolidation contributorSeries7 cognosnow' ,$connection-type)">
  3205. if (f.m_connection_port) {
  3206. if (!checkMandatory(f.m_connection_port, m15)) {
  3207. return false;
  3208. }
  3209. if (!isPortRangeValid(f.m_connection_port)) {
  3210. //invalid port range
  3211. alert('<xts:string id="IDS_PROP_CONN_PORT_NUMBER_ERROR" encode="javascript"/>');
  3212. CAFSelectText(f.m_connection_port,f.m_connection_port.value);
  3213. return false;
  3214. }
  3215. }
  3216. </out:if>
  3217. <out:if test="$connection-type='contributorSeries7'">
  3218. if (f.m_connection_padid)
  3219. {
  3220. if (trim(f.m_connection_padid.value) != '' &amp;&amp; trim(f.m_p_credentialNamespaces.value) == '')
  3221. {
  3222. alert('<xts:string id="IDS_PROP_CONN_PLANNING_NO_NAMESPACE_WARNING" encode="javascript"/>');
  3223. return false;
  3224. }
  3225. if (!checkReservedChar(f.m_connection_padid, m10))
  3226. {
  3227. return false;
  3228. }
  3229. }
  3230. </out:if>
  3231. <out:if test="$connection-type='powercube'">
  3232. if (f.m_connection_windows_cube)
  3233. {
  3234. if (!checkMandatory(f.m_connection_windows_cube, m1))
  3235. {
  3236. return false;
  3237. }
  3238. if (!checkReservedChar(f.m_connection_windows_cube, m1))
  3239. {
  3240. return false;
  3241. }
  3242. }
  3243. if (f.m_connection_unix_cube)
  3244. {
  3245. if (!checkReservedChar(f.m_connection_unix_cube, m12))
  3246. {
  3247. return false;
  3248. }
  3249. if (!checkInvalidChar(f.m_connection_unix_cube, m12, '\\'))
  3250. {
  3251. return false;
  3252. }
  3253. }
  3254. </out:if>
  3255. <out:if test="$ODBC_UI or contains(' db2 sql sql2005 sql2008 sql2012-2014 oracle sybase sybase_ct15 informix sap ', concat(' ',$connection-type,' '))">
  3256. if (f.m_connection_database)
  3257. {
  3258. <out:if test= "count(/root/env/param[@name='m_create_jdbc']) = 0 and count(/root/env/param[@name='m_connection_enable_JDBC']) = 0">
  3259. if (!checkMandatory(f.m_connection_database, m1))
  3260. {
  3261. return false;
  3262. }
  3263. </out:if>
  3264. if (!checkReservedChar(f.m_connection_database, m1))
  3265. {
  3266. return false;
  3267. }
  3268. <out:if test="$connection-type='oracle'">
  3269. if (!checkInvalidChar(f.m_connection_database, m1, '/'))
  3270. {
  3271. return false;
  3272. }
  3273. </out:if>
  3274. }
  3275. <out:if test="$connection-type='sap'">
  3276. if (f.m_connection_sys_no &amp;&amp; (isNaN(f.m_connection_sys_no.value) || parseInt(f.m_connection_sys_no.value, 10) != f.m_connection_sys_no.value || f.m_connection_sys_no.value &lt; 0))
  3277. {
  3278. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3279. f.m_connection_sys_no.focus();
  3280. return false;
  3281. }
  3282. if (f.m_connection_client_no &amp;&amp; (isNaN(f.m_connection_client_no.value) &amp;&amp; parseInt(f.m_connection_client_no.value, 10) != f.m_connection_client_no.value || f.m_connection_client_no.value &lt; 0))
  3283. {
  3284. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3285. f.m_connection_client_no.focus();
  3286. return false;
  3287. }
  3288. </out:if>
  3289. </out:if>
  3290. <out:if test="$connection-type = 'sapR3' or $connection-type = 'sapECC'">
  3291. var mR32 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEMNUMBER" encode="javascript"/>";
  3292. var mR33 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_GATEWAY_HOST" encode="javascript"/>";
  3293. var mR34 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_GATEWAY_SERVICE" encode="javascript"/>";
  3294. var mR35 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_DESTINATION" encode="javascript"/>";
  3295. var mR36 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_CLIENT" encode="javascript"/>";
  3296. var mR37 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_LANGUAGE" encode="javascript"/>";
  3297. if (f.m_connection_hostname)
  3298. {
  3299. if (!checkMandatory(f.m_connection_hostname, m1))
  3300. {
  3301. return false;
  3302. }
  3303. if (!checkReservedChar(f.m_connection_hostname, m1))
  3304. {
  3305. return false;
  3306. }
  3307. }
  3308. if (f.m_connection_sys_no)
  3309. {
  3310. if (!checkMandatory(f.m_connection_sys_no, mR32))
  3311. {
  3312. return false;
  3313. }
  3314. if (isNaN(f.m_connection_sys_no.value) &amp;&amp; parseInt(f.m_connection_sys_no.value, 10) != f.m_connection_sys_no.value || f.m_connection_sys_no.value &lt; 0)
  3315. {
  3316. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3317. f.m_connection_sys_no.focus();
  3318. return false;
  3319. }
  3320. }
  3321. if (f.m_connection_gateway_host)
  3322. {
  3323. if (!checkMandatory(f.m_connection_gateway_host, mR33))
  3324. {
  3325. return false;
  3326. }
  3327. if (!checkReservedChar(f.m_connection_gateway_host, mR33))
  3328. {
  3329. return false;
  3330. }
  3331. }
  3332. if (f.m_connection_gateway_service)
  3333. {
  3334. if (!checkMandatory(f.m_connection_gateway_service, mR34))
  3335. {
  3336. return false;
  3337. }
  3338. }
  3339. if (f.m_connection_destination)
  3340. {
  3341. if (!checkMandatory(f.m_connection_destination, mR35))
  3342. {
  3343. return false;
  3344. }
  3345. }
  3346. if (f.m_connection_client)
  3347. {
  3348. if (!checkMandatory(f.m_connection_client, mR36))
  3349. {
  3350. return false;
  3351. }
  3352. }
  3353. if (f.m_connection_language)
  3354. {
  3355. if (!checkMandatory(f.m_connection_sap_language, mR37))
  3356. {
  3357. return false;
  3358. }
  3359. }
  3360. </out:if>
  3361. <out:if test="$connection-type='sr3' and not($test)">
  3362. var sR31 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_APPLICATION_SERVER" encode="javascript"/>";
  3363. var sR32 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_ROUTER_STRING" encode="javascript"/>";
  3364. var sR33 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEM_NUMBER" encode="javascript"/>";
  3365. var sR34 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_CLIENT" encode="javascript"/>";
  3366. var sR35 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_LANG" encode="javascript"/>";
  3367. var sR36 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_MAX_CONN_IN_POOL" encode="javascript"/>";
  3368. var sR37 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_TABLE_READ_FUNCTION" encode="javascript"/>";
  3369. var sR38 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_TABLE_ROW_COUNT" encode="javascript"/>";
  3370. var sR39 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_ABAP_QUERY_DB_ACCESS_LIMIT" encode="javascript"/>";
  3371. var sR310 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_MESSAGE_SERVER" encode="javascript"/>";
  3372. var sR311 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_SYSTEM_ID" encode="javascript"/>";
  3373. var sR312 = "<xts:string id="IDS_SELECT_CONNECT_SAPR3_LOGON_GROUP" encode="javascript"/>";
  3374. if (f.m_connection_use_loadbalancing_hidden)
  3375. {
  3376. if (f.m_connection_use_loadbalancing_hidden.value=="true")
  3377. {
  3378. if (f.m_connection_message_server)
  3379. {
  3380. if (!checkMandatory(f.m_connection_message_server, sR310))
  3381. {
  3382. return false;
  3383. }
  3384. }
  3385. if (f.m_connection_system_id)
  3386. {
  3387. if (!checkMandatory(f.m_connection_system_id, sR311))
  3388. {
  3389. return false;
  3390. }
  3391. }
  3392. if (f.m_connection_logon_group)
  3393. {
  3394. if (!checkMandatory(f.m_connection_logon_group, sR312))
  3395. {
  3396. return false;
  3397. }
  3398. }
  3399. }
  3400. else
  3401. {
  3402. if (f.m_connection_application_server)
  3403. {
  3404. if (!checkMandatory(f.m_connection_application_server, sR31))
  3405. {
  3406. return false;
  3407. }
  3408. }
  3409. if (f.m_connection_system_number)
  3410. {
  3411. if (!checkMandatory(f.m_connection_system_number, sR33))
  3412. {
  3413. return false;
  3414. }
  3415. }
  3416. }
  3417. }
  3418. if (f.m_connection_client)
  3419. {
  3420. if (!checkMandatory(f.m_connection_client, sR34))
  3421. {
  3422. return false;
  3423. }
  3424. }
  3425. if (f.m_connection_language)
  3426. {
  3427. if (!checkMandatory(f.m_connection_language, sR35))
  3428. {
  3429. return false;
  3430. }
  3431. }
  3432. if (f.m_connection_max_conn_in_pool)
  3433. {
  3434. if (!checkMandatory(f.m_connection_max_conn_in_pool, sR36) || isNaN(f.m_connection_max_conn_in_pool.value))
  3435. {
  3436. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3437. f.m_connection_max_conn_in_pool.focus();
  3438. return false;
  3439. }
  3440. }
  3441. if (f.m_connection_table_read_function)
  3442. {
  3443. if (!checkMandatory(f.m_connection_table_read_function, sR37))
  3444. {
  3445. return false;
  3446. }
  3447. }
  3448. if (f.m_connection_table_row_count)
  3449. {
  3450. if (!checkMandatory(f.m_connection_table_row_count, sR38) || isNaN(f.m_connection_table_row_count.value))
  3451. {
  3452. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3453. f.m_connection_table_row_count.focus();
  3454. return false;
  3455. }
  3456. }
  3457. if (f.m_connection_abap_query_db_access_limit)
  3458. {
  3459. if (!checkMandatory(f.m_connection_abap_query_db_access_limit, sR39) || isNaN(f.m_connection_abap_query_db_access_limit.value))
  3460. {
  3461. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3462. f.m_connection_abap_query_db_access_limit.focus();
  3463. return false;
  3464. }
  3465. }
  3466. </out:if>
  3467. <out:if test="$connection-type='siebel' and not($test)">
  3468. var sb1 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_GATEWAYNAMESERVER" encode="javascript"/>";
  3469. var sb2 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_GATEWAYPORT" encode="javascript"/>";
  3470. var sb3 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_ENTERPRISENAME" encode="javascript"/>";
  3471. var sb4 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_AOM" encode="javascript"/>";
  3472. var sb5 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_LANGUAGE" encode="javascript"/>";
  3473. var sb6 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_REPOSITORY" encode="javascript"/>";
  3474. var sb7 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_LIBRARY" encode="javascript"/>";
  3475. var sb8 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_CODEPAGE" encode="javascript"/>";
  3476. var sb9 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_TRANSPORT" encode="javascript"/>";
  3477. var sb10 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_COMPRESSION" encode="javascript"/>";
  3478. var sb11 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_ENCRYPTION" encode="javascript"/>";
  3479. var sb12 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_LOGIN_RETRIES" encode="javascript"/>";
  3480. var sb13 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_LOGIN_RETRY_DELAY" encode="javascript"/>";
  3481. var sb14 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_MAX_RECORDS" encode="javascript"/>";
  3482. var sb15 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_VIEWMODE" encode="javascript"/>";
  3483. var sb16 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_SEARCHONLYWITHINPRIMARYRECORDS_FOR_MVF" encode="javascript"/>";
  3484. var sb17 = "<xts:string id="IDS_SELECT_CONNECT_SIEBEL_ADV_PARAMETERS" encode="javascript"/>";
  3485. if (f.m_connection_gatewayserver)
  3486. {
  3487. if (!checkMandatory(f.m_connection_gatewayserver, sb1))
  3488. {
  3489. return false;
  3490. }
  3491. }
  3492. if (f.m_connection_gatewayport)
  3493. {
  3494. if (!checkMandatory(f.m_connection_gatewayport, sb2))
  3495. {
  3496. return false;
  3497. }
  3498. }
  3499. else if (isNaN(f.m_connection_gatewayport.value))
  3500. {
  3501. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3502. f.m_connection_gatewayport.focus();
  3503. return false;
  3504. }
  3505. if (f.m_connection_enterprise_name)
  3506. {
  3507. if (!checkMandatory(f.m_connection_enterprise_name, sb3))
  3508. {
  3509. return false;
  3510. }
  3511. }
  3512. if (f.m_connection_aom)
  3513. {
  3514. if (!checkMandatory(f.m_connection_aom, sb4))
  3515. {
  3516. return false;
  3517. }
  3518. }
  3519. if (f.m_connection_language)
  3520. {
  3521. if (!checkMandatory(f.m_connection_language, sb5))
  3522. {
  3523. return false;
  3524. }
  3525. }
  3526. if (f.m_connection_login_retries)
  3527. {
  3528. }
  3529. else if (isNaN(f.m_connection_login_retries.value))
  3530. {
  3531. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3532. f.m_connection_login_retries.focus();
  3533. return false;
  3534. }
  3535. if (f.m_connection_login_retry_delay)
  3536. {
  3537. }
  3538. else if (isNaN(f.m_connection_login_retry_delay.value))
  3539. {
  3540. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3541. f.m_connection_login_retry_delay.focus();
  3542. return false;
  3543. }
  3544. </out:if>
  3545. <out:if test="$connection-type='sfdc' and not($test)">
  3546. var sfdc1 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_URL" encode="javascript"/>";
  3547. var sfdc2 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_CONCC_CALLS_LIMIT" encode="javascript"/>";
  3548. var sfdc3 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_USER_CONCC_CALLS_LIMIT" encode="javascript"/>";
  3549. var sfdc4 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_CONN_TIMEOUT" encode="javascript"/>";
  3550. var sfdc5 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_QUERY_BATCH_SIZE" encode="javascript"/>";
  3551. var sfdc6 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_MAX_RETRIES" encode="javascript"/>";
  3552. var sfdc7 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_WAIT_BETWEEN_RETRIES" encode="javascript"/>";
  3553. var sfdc8 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_ENABLED" encode="javascript"/>";
  3554. var sfdc9 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_HOST" encode="javascript"/>";
  3555. var sfdc10 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_PORT" encode="javascript"/>";
  3556. var sfdc11 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_USER" encode="javascript"/>";
  3557. var sfdc12 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_PROXY_PWD" encode="javascript"/>";
  3558. var sfdc13 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_REST_ENABLED" encode="javascript"/>";
  3559. var sfdc14 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_REST_CLIENTID" encode="javascript"/>";
  3560. var sfdc15 = "<xts:string id="IDS_SELECT_CONNECT_SFDC_REST_CLIENT_SECRET" encode="javascript"/>";
  3561. if (f.m_connection_url)
  3562. {
  3563. if (!checkMandatory(f.m_connection_url, sfdc1))
  3564. {
  3565. return false;
  3566. }
  3567. }
  3568. if (f.m_connection_conc_calls_limit)
  3569. {
  3570. if (!checkMandatory(f.m_connection_conc_calls_limit, sfdc2))
  3571. {
  3572. return false;
  3573. }
  3574. else if (isNaN(f.m_connection_conc_calls_limit.value))
  3575. {
  3576. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3577. f.m_connection_conc_calls_limit.focus();
  3578. return false;
  3579. }
  3580. }
  3581. if (f.m_connection_user_conc_calls_limit)
  3582. {
  3583. if (!checkMandatory(f.m_connection_user_conc_calls_limit, sfdc3))
  3584. {
  3585. return false;
  3586. }
  3587. else if (isNaN(f.m_connection_user_conc_calls_limit.value))
  3588. {
  3589. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3590. f.m_connection_user_conc_calls_limit.focus();
  3591. return false;
  3592. }
  3593. }
  3594. if (f.m_connection_timeout)
  3595. {
  3596. if (!checkMandatory(f.m_connection_timeout, sfdc4))
  3597. {
  3598. return false;
  3599. }
  3600. else if (isNaN(f.m_connection_timeout.value))
  3601. {
  3602. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3603. f.m_connection_timeout.focus();
  3604. return false;
  3605. }
  3606. }
  3607. if (f.m_connection_query_batch_size)
  3608. {
  3609. if (!checkMandatory(f.m_connection_query_batch_size, sfdc5))
  3610. {
  3611. return false;
  3612. }
  3613. else if (isNaN(f.m_connection_query_batch_size.value))
  3614. {
  3615. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3616. f.m_connection_query_batch_size.focus();
  3617. return false;
  3618. }
  3619. }
  3620. if (f.m_connection_max_retries)
  3621. {
  3622. if (!checkMandatory(f.m_connection_max_retries, sfdc6))
  3623. {
  3624. return false;
  3625. }
  3626. else if (isNaN(f.m_connection_max_retries.value))
  3627. {
  3628. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3629. f.m_connection_max_retries.focus();
  3630. return false;
  3631. }
  3632. }
  3633. if (f.m_connection_wait_between_retries)
  3634. {
  3635. if (!checkMandatory(f.m_connection_wait_between_retries, sfdc7))
  3636. {
  3637. return false;
  3638. }
  3639. else if (isNaN(f.m_connection_wait_between_retries.value))
  3640. {
  3641. window.alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3642. f.m_connection_wait_between_retries.focus();
  3643. return false;
  3644. }
  3645. }
  3646. </out:if>
  3647. <out:if test="$connection-type='sap' and not($test)">
  3648. <out:if test="key('env-param','m_connection_sap_type') = 'applicationServer'">
  3649. if (f.m_connection_sys_no)
  3650. {
  3651. if (!checkMandatory(f.m_connection_sys_no, m3))
  3652. {
  3653. return false;
  3654. }
  3655. }
  3656. </out:if>
  3657. <out:if test="key('env-param','m_connection_sap_type') = 'messageServer'">
  3658. if (f.m_connection_sys_id)
  3659. {
  3660. if (!checkMandatory(f.m_connection_sys_id, m9))
  3661. {
  3662. return false;
  3663. }
  3664. }
  3665. if (f.m_connection_logon)
  3666. {
  3667. if (!checkMandatory(f.m_connection_logon, m4))
  3668. {
  3669. return false;
  3670. }
  3671. }
  3672. </out:if>
  3673. if (f.m_connection_client_no)
  3674. {
  3675. if (!checkMandatory(f.m_connection_client_no, m5))
  3676. {
  3677. return false;
  3678. }
  3679. }
  3680. </out:if>
  3681. <out:if test="contains('xml', $connection-type)">
  3682. if (f.m_p_connectionString)
  3683. {
  3684. if (!checkMandatory(f.m_connection_database, m6))
  3685. {
  3686. return false;
  3687. }
  3688. }
  3689. </out:if>
  3690. <out:if test="contains('other', $connection-type)">
  3691. if (f.m_other_connectionString)
  3692. {
  3693. if (!checkMandatory(f.m_other_connectionString, m6))
  3694. {
  3695. return false;
  3696. }
  3697. }
  3698. </out:if>
  3699. <out:choose>
  3700. <out:when test="$connection-type='db2'">
  3701. <!-- connection string -->
  3702. if (!checkReservedChar(f.m_connection_string, '<xts:string id="IDS_SELECT_CONNECT_DB2_CONNECTSTRING" encode="javascript"/>'))
  3703. {
  3704. return false;
  3705. }
  3706. <!-- Collation sequence -->
  3707. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3708. {
  3709. return false;
  3710. }
  3711. </out:when>
  3712. <out:when test="contains(' sql sql2005 sql2008 sql2012-2014 ', concat(' ',$connection-type,' '))">
  3713. <!-- database name -->
  3714. if (!checkReservedChar(f.m_connection_sql_database_name, m2))
  3715. {
  3716. return false;
  3717. }
  3718. <!-- Application name -->
  3719. if (!checkReservedChar(f.m_connection_sql_application, '<xts:string id="IDS_SELECT_CONNECT_SYBASE_APPLICATION" encode="javascript"/>'))
  3720. {
  3721. return false;
  3722. }
  3723. <!-- Collation sequence -->
  3724. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3725. {
  3726. return false;
  3727. }
  3728. </out:when>
  3729. <out:when test="$connection-type = 'oracle'">
  3730. <!-- Collation sequence -->
  3731. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3732. {
  3733. return false;
  3734. }
  3735. </out:when>
  3736. <out:when test="$ODBC_UI">
  3737. <!-- ODBC Connect string can contain semi-columns to allow users to enter more than one parameter
  3738. In ODBC, parameter are separated by semi-columns.
  3739. -->
  3740. <!-- Collation sequence -->
  3741. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3742. {
  3743. return false;
  3744. }
  3745. </out:when>
  3746. <out:when test="$connection-type = 'sybase' or $connection-type = 'sybase_ct15'">
  3747. <!-- Database name -->
  3748. if (!checkReservedChar(f.m_connection_sybase_database_name, m2))
  3749. {
  3750. return false;
  3751. }
  3752. <!-- Application name -->
  3753. if (!checkReservedChar(f.m_connection_sybase_application, '<xts:string id="IDS_SELECT_CONNECT_SYBASE_APPLICATION" encode="javascript"/>'))
  3754. {
  3755. return false;
  3756. }
  3757. <!-- Collation sequence -->
  3758. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3759. {
  3760. return false;
  3761. }
  3762. </out:when>
  3763. <out:when test="$connection-type = 'sap' and key('env-param','m_connection_sap_type') = 'messageServer'">
  3764. <!-- system ID -->
  3765. if (!checkReservedChar(f.m_connection_sys_id, '<xts:string id="IDS_SELECT_CONNECT_SYSTEM_ID" encode="javascript"/>'))
  3766. {
  3767. return false;
  3768. }
  3769. <!-- Logon group -->
  3770. if (!checkReservedChar(f.m_connection_logon, '<xts:string id="IDS_SELECT_CONNECT_LOGON_GROUP" encode="javascript"/>'))
  3771. {
  3772. return false;
  3773. }
  3774. <!-- SAP router string -->
  3775. if (!checkReservedChar(f.m_connection_router_string, '<xts:string id="IDS_SELECT_CONNECT_ROUTER_STRING" encode="javascript"/>'))
  3776. {
  3777. return false;
  3778. }
  3779. </out:when>
  3780. <out:when test="$connection-type = 'sap' and key('env-param','m_connection_sap_type') = 'applicationServer'">
  3781. <!-- SAP router string -->
  3782. if (!checkReservedChar(f.m_connection_router_string, '<xts:string id="IDS_SELECT_CONNECT_ROUTER_STRING" encode="javascript"/>'))
  3783. {
  3784. return false;
  3785. }
  3786. </out:when>
  3787. <out:when test="$connection-type = 'informix'">
  3788. <!-- Host name -->
  3789. if (!checkReservedChar(f.m_connection_hostname, '<xts:string id="IDS_SELECT_CONNECT_INFORMIX_HOSTNAME" encode="javascript"/>'))
  3790. {
  3791. return false;
  3792. }
  3793. <!-- Server name -->
  3794. if (!checkReservedChar(f.m_connection_servername, '<xts:string id="IDS_SELECT_CONNECT_INFORMIX_SERVERNAME" encode="javascript"/>'))
  3795. {
  3796. return false;
  3797. }
  3798. <!-- Collation sequence -->
  3799. if (!checkReservedChar(f.m_connection_colseq, '<xts:string id="IDS_SELECT_CONNECT_COLSEQ" encode="javascript"/>'))
  3800. {
  3801. return false;
  3802. }
  3803. <!-- Service -->
  3804. if (!checkReservedChar(f.m_connection_service_name, '<xts:string id="IDS_SELECT_CONNECT_INFORMIX_SERVICE" encode="javascript"/>'))
  3805. {
  3806. return false;
  3807. }
  3808. </out:when>
  3809. <out:when test="starts-with($connection-type, 'jdbc-')">
  3810. <out:for-each select="/root/*[local-name()='datasources' or local-name()='jdbcdatasources']/datasource[starts-with(value,'jdbc-')]/properties/property">
  3811. // only should validate enabled fields
  3812. if (f.<out:value-of select="value"/>.disabled == false) {
  3813. //
  3814. // general validation
  3815. //
  3816. // check mandatory
  3817. <out:if test="validationRules/mandatory = 'true'">
  3818. if (!checkMandatory(f.<out:value-of select="value"/>, '<out:value-of select="normalize-space(name)"/>')) {
  3819. return false;
  3820. }
  3821. </out:if>
  3822. if (!checkInvalidChar(f.m_connection_servername, '<out:value-of select="normalize-space(name)"/>', ':'))
  3823. {
  3824. return false;
  3825. }
  3826. // check reserved chars
  3827. <out:if test="validationRules/reservedChar">
  3828. if (!checkReservedChar(f.<out:value-of select="value"/>, '<out:value-of select="normalize-space(name)"/>')) {
  3829. return false;
  3830. }
  3831. </out:if>
  3832. // maxLength
  3833. <out:if test="validationRules/maxLength">
  3834. if (f.<out:value-of select="value"/>.value.length &gt; <out:value-of select="validationRules/maxLength"/>) {
  3835. alert('<xts:string id="IDS_VAL_ERR_MAXIMUM_LENGTH" encode="javascript"/>');
  3836. f.<out:value-of select="value"/>.focus();
  3837. return false;
  3838. }
  3839. </out:if>
  3840. //
  3841. // check type specific validation
  3842. //
  3843. <out:if test="validationRules/type = 'port'">
  3844. if (!isPortRangeValid(f.<out:value-of select="value"/>) &amp;&amp; (<out:value-of select="validationRules/mandatory"/> || f.<out:value-of select="value"/>.value.length != 0)) {
  3845. // invalid port range
  3846. alert('<xts:string id="IDS_PROP_CONN_PORT_NUMBER_ERROR" encode="javascript"/>');
  3847. CAFSelectText(f.<out:value-of select="value"/>,f.<out:value-of select="value"/>.value);
  3848. return false;
  3849. }
  3850. </out:if>
  3851. <out:if test="validationRules/type = 'positiveInteger'">
  3852. if (isNaN(f.<out:value-of select="value"/>.value) || parseInt(f.<out:value-of select="value"/>.value, 10) != f.<out:value-of select="value"/>.value || f.<out:value-of select="value"/>.value &lt; 0) {
  3853. alert('<xts:string id="IDS_VAL_ERR_UNSIGNED_INTEGER" encode="javascript"/>');
  3854. f.<out:value-of select="value"/>.focus();
  3855. return false;
  3856. }
  3857. </out:if>
  3858. <out:if test="validationRules/type = 'nameValuePairList'">
  3859. if (!isValidNameValuePairList(f.<out:value-of select="value"/>, '<out:value-of select="validationRules/separator"/>')) {
  3860. <out:variable name="errMsg">
  3861. <xts:string id="IDS_ERR_NAME_VALUE_LIST" encode="javascript">
  3862. <xts:param name="field"><out:value-of select="validationRules/separator"/></xts:param>
  3863. </xts:string>
  3864. </out:variable>
  3865. alert('<out:value-of select="normalize-space($errMsg)"/>');
  3866. f.<out:value-of select="value"/>.focus();
  3867. return false;
  3868. }
  3869. </out:if>
  3870. }
  3871. </out:for-each>
  3872. </out:when>
  3873. </out:choose>
  3874. <out:if test="$connection-type != 'powercube' and $connection-type != 'xml' and $connection-type != 'consolidation' and $connection-type != 'contributor' and $connection-type != 'contributorSeries7'">
  3875. if (f.m_connection_default_signon &amp;&amp; f.m_connection_default_signon.disabled == false &amp;&amp;
  3876. f.m_connection_default_signon.checked == true)
  3877. {
  3878. <out:if test="not($test)">
  3879. if (!checkMandatory(f.m_connection_userid, m7))
  3880. {
  3881. return false;
  3882. }
  3883. </out:if>
  3884. if (f.m_connection_password.value != f.m_connection_confirm_password.value)
  3885. {
  3886. alert(m8);
  3887. return false;
  3888. }
  3889. if (!checkReservedChar(f.m_connection_userid, '<xts:string id="IDS_USERID" encode="javascript"/>'))
  3890. {
  3891. return false;
  3892. }
  3893. if (!checkReservedChar(f.m_connection_password, '<xts:string id="IDS_PASSWORD" encode="javascript"/>'))
  3894. {
  3895. return false;
  3896. }
  3897. }
  3898. </out:if>
  3899. <!-- make sure the cube passwords are the same -->
  3900. <out:if test="$connection-type = 'powercube'">
  3901. if (f.cube_password_checkbox.checked &amp;&amp; f.m_cube_password &amp;&amp; f.m_cube_password.value != f.m_cube_confirm_password.value)
  3902. {
  3903. alert(m8);
  3904. f.m_cube_password.focus();
  3905. return false;
  3906. }
  3907. </out:if>
  3908. <!-- make sure the user has a namesapce to select -->
  3909. <out:if test="$connection-type = 'consolidation' and not(/root/namespaces/cm:queryResponse/cm:namespace)">
  3910. alert('<xts:string id="IDS_PROP_CONN_FINANCE_NO_NAMESPACE_ERROR" encode="javascript"/>');
  3911. return false;
  3912. </out:if>
  3913. return true;
  3914. </out:template>
  3915. <out:template name="gen-signon-section">
  3916. <out:param name="form-read-only"/>
  3917. <out:param name="utml-form-name"/>
  3918. <out:param name="uid-pwd-checkboxes" select="'false'"/>
  3919. <out:param name="connectionType"/>
  3920. <out:param name="wizard" select="'false'"/>
  3921. <out:if test="not($wizard = 'false' and $uid-pwd-checkboxes = 'false')">
  3922. <lyt:layout title="IDS_SELECT_CONNECT_DEFAULT_SIGNON" style="1" border="yes" id="authentication_ID">
  3923. <lyt:intro>
  3924. <out:choose>
  3925. <out:when test="contains(' sql sql2005 sql2008 sql2012-2014 dbtwoolap tm1 tm1R odata ', concat(' ',$connectionType,' '))">
  3926. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_NONE_WIN_EXTERNAL_SIGNON_HINT"/>
  3927. </out:when>
  3928. <out:when test="$connectionType='sap'">
  3929. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_SAP_HINT"/>
  3930. </out:when>
  3931. <out:when test="$connectionType='sr3'">
  3932. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_SAPR3_HINT"/>
  3933. </out:when>
  3934. <out:when test="$connectionType='oracle'">
  3935. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_NONE_WITH_EXTERNAL_SIGNON_HINT_AND_USERID"/>
  3936. </out:when>
  3937. <out:when test="$connectionType='sfdc'">
  3938. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_SFDC_HINT"/>
  3939. </out:when>
  3940. <out:when test="$connectionType='siebel'">
  3941. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_SIEBEL_HINT"/>
  3942. </out:when>
  3943. <out:when test="$connectionType='sqlodbc' or $connectionType='composite' or $connectionType='virtualviewmanager' or $connectionType='teradata' or $connectionType='db2' or $connectionType='odbc'">
  3944. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_NONE_EXTERNAL_SIGNON_HINT"/>
  3945. </out:when>
  3946. <out:when test="contains(' msanalysis2005 msanalysis2008 msanalysis2012 msanalysis2014 msanalysis2016 msanalysis2017 ', concat(' ',$connectionType,' '))">
  3947. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_WIN_SIGNON_HINT"/>
  3948. </out:when>
  3949. <out:when test="$connectionType='powercube'">
  3950. <xts:string id ="IDS_SELECT_CONNECT_USER_PROMPTS_NONE_EXTERNAL_HINT"/>
  3951. </out:when>
  3952. <out:when test="$connectionType='consolidation'">
  3953. <xts:string id ="IDS_SELECT_CONNECT_EXTERNAL_NAMESPACE_HINT"/>
  3954. </out:when>
  3955. <out:when test="$connectionType='json'">
  3956. <xts:string id ="IDS_SELECT_CONNECT_CREATE_AUTHENTICATION_HINT"/>
  3957. </out:when>
  3958. <!-- 1 choice - The signons of this connection -->
  3959. <out:when test="$wizard != 'false'">
  3960. <out:choose>
  3961. <out:when test="$uid-pwd-checkboxes != 'false'">
  3962. <!-- For connection types with the ability to specified if user id/password are required -->
  3963. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_HINT"/>
  3964. </out:when>
  3965. <out:otherwise>
  3966. <!-- For connection types with only the Create a signon controls -->
  3967. <xts:string id="IDS_SELECT_CONNECT_CREATE_SIGNON_HINT"/>
  3968. </out:otherwise>
  3969. </out:choose>
  3970. </out:when>
  3971. <out:otherwise>
  3972. <!-- When viewing the properties of an existing connection -->
  3973. <xts:string id="IDS_SELECT_CONNECT_USER_PROMPTS_ONLY_HINT"/>
  3974. </out:otherwise>
  3975. </out:choose>
  3976. </lyt:intro>
  3977. <lyt:section>
  3978. <out:choose>
  3979. <out:when test="contains(' sql sql2005 sql2008 sql2012-2014 sqlodbc jdbc-sql composite virtualviewmanager consolidation msanalysis2005 msanalysis2008 msanalysis2012 msanalysis2016 msanalysis2017 msanalysis2014 sap sr3 sfdc siebel powercube dbtwoolap tm1R tm1 odata teradata jdbc-teradata db2 jdbc-db2 odbc netezza jdbc-netezza jdbc-generic oracle lob-jdbc ', concat(' ',$connectionType,' '))">
  3980. <out:variable name="available_namespace">
  3981. <out:choose>
  3982. <out:when test="/root/namespaces/cm:queryResponse/cm:namespace/*">true</out:when>
  3983. <out:otherwise>false</out:otherwise>
  3984. </out:choose>
  3985. </out:variable>
  3986. <out:choose>
  3987. <out:when test="$connectionType='consolidation' ">
  3988. <dp:input>
  3989. <dp:section1>
  3990. <xts:string id="IDS_SELECT_CONNECT_FINANCE_EXTERNAL_NAMESPACE"/>
  3991. </dp:section1>
  3992. <dp:section2>
  3993. <xsl:call-template name="dcx:externalNamespace"/>
  3994. </dp:section2>
  3995. </dp:input>
  3996. </out:when>
  3997. <out:otherwise>
  3998. <utml:radio-group name="authentication">
  3999. <utml:default-value>
  4000. <out:choose>
  4001. <out:when test="contains(' powercube odata ',concat(' ',$connectionType,' '))">none</out:when>
  4002. <out:otherwise>signon</out:otherwise>
  4003. </out:choose>
  4004. </utml:default-value>
  4005. <dp:choice aria-labelledby="authentication_ID">
  4006. <!-- no authentication -->
  4007. <out:if test="contains(' powercube sqlodbc composite virtualviewmanager sql sql2005 sql2008 sql2012-2014 jdbc-sql dbtwoolap tm1R tm1 odata teradata jdbc-teradata db2 jdbc-db2 odbc netezza jdbc-netezza jdbc-generic lob-jdbc ', concat(' ',$connectionType,' '))">
  4008. <dp:section1>
  4009. <utml:input type="radio" name="authentication" value="none" onclick="onChangeAuthentication();" id="ctrl_authentication_none"/>
  4010. </dp:section1>
  4011. <dp:section2 for="ctrl_authentication_none">
  4012. <out:choose>
  4013. <out:when test="$connectionType='powercube'"><xts:string id="IDS_SELECT_CONNECT_POWERCUBE_NO_AUTHENTICATION"/></out:when>
  4014. <out:otherwise>
  4015. <out:choose>
  4016. <out:when test="contains($connectionType, 'tm1')"><xts:string id="IDS_SELECT_CONNECT_INTEGRATED_SECURITY"/></out:when>
  4017. <out:otherwise><xts:string id="IDS_SELECT_CONNECT_NO_AUTHENTICATION"/></out:otherwise>
  4018. </out:choose>
  4019. </out:otherwise>
  4020. </out:choose>
  4021. </dp:section2>
  4022. </out:if>
  4023. <!-- windows authentication -->
  4024. <out:if test="contains(' msanalysis2005 msanalysis2008 msanalysis2012 msanalysis2016 msanalysis2017 msanalysis2014 sql sql2005 sql2008 sql2012-2014 jdbc-sql sqlodbc ', concat(' ',$connectionType,' '))">
  4025. <dp:section1>
  4026. <utml:input type="radio" name="authentication" value="windows" onclick="onChangeAuthentication();" id="ctrl_authentication_windows"/>
  4027. </dp:section1>
  4028. <dp:section2 for="ctrl_authentication_windows">
  4029. <xts:string id="IDS_SELECT_CONNECT_WINDOWS_AUTHENTICATION"/>
  4030. </dp:section2>
  4031. </out:if>
  4032. <!-- external namespace -->
  4033. <out:if test="contains(' sr3 sfdc siebel sap dbtwoolap tm1R tm1 msanalysis2005 msanalysis2008 msanalysis2012 msanalysis2016 msanalysis2017 msanalysis2014 powercube sqlodbc composite virtualviewmanager sql sql2005 sql2008 sql2012-2014 jdbc-sql dbtwoolap teradata jdbc-teradata db2 jdbc-db2 odbc netezza jdbc-netezza jdbc-generic oracle lob-jdbc ', concat(' ',$connectionType,' '))">
  4034. <dp:section1>
  4035. <utml:input type="radio" name="authentication" value="namespace" onclick="onChangeAuthentication();" id="ctrl_authentication_namespace">
  4036. <out:if test="$available_namespace='false'">
  4037. <out:attribute name="disabled">true</out:attribute>
  4038. </out:if>
  4039. </utml:input>
  4040. </dp:section1>
  4041. <dp:section2 for="ctrl_authentication_namespace">
  4042. <out:choose>
  4043. <out:when test="$connectionType='powercube'">
  4044. <xts:string id="IDS_SELECT_CONNECT_POWERCUBE_RESTRICTED"/>
  4045. </out:when>
  4046. <out:otherwise>
  4047. <xts:string id="IDS_SELECT_CONNECT_SAP_EXTERNAL_NAMESPACE"/>
  4048. </out:otherwise>
  4049. </out:choose>
  4050. </dp:section2>
  4051. <dp:section3>
  4052. <dp:section1>
  4053. <xsl:call-template name="dcx:externalNamespace"/>
  4054. </dp:section1>
  4055. </dp:section3>
  4056. </out:if>
  4057. <!-- signon -->
  4058. <out:if test="contains(' sr3 sfdc siebel sap msanalysis2005 msanalysis2008 msanalysis2012 msanalysis2016 msanalysis2017 msanalysis2014 sql sql2005 sql2008 sql2012-2014 jdbc-sql tm1R tm1 odata dbtwoolap sqlodbc composite virtualviewmanager dbtwoolap teradata jdbc-teradata db2 jdbc-db2 odbc netezza jdbc-netezza jdbc-generic lob-jdbc ', concat(' ',$connectionType,' '))">
  4059. <dp:section1>
  4060. <utml:input type="radio" name="authentication" value="signon" onclick="onChangeAuthentication();" id="ctrl_authentication_signon"/>
  4061. </dp:section1>
  4062. <dp:section2 for="ctrl_authentication_signon">
  4063. <out:choose>
  4064. <out:when test="$wizard='false'"><xts:string id="IDS_SELECT_CONNECT_SIGNON_PROPERTY_DIALOG"/></out:when>
  4065. <out:otherwise><xts:string id="IDS_SELECT_CONNECT_SIGNONS"/></out:otherwise>
  4066. </out:choose>
  4067. </dp:section2>
  4068. <dp:section3>
  4069. <out:if test="$connectionType!='sap'">
  4070. <dp:group>
  4071. <dp:groupItem>
  4072. <dp:choice noSpace="true">
  4073. <dp:section1>
  4074. <utml:input type="checkbox" name="m_connection_use_pword" onclick="togglePasswordCheckbox()" id="ctrl_m_connection_use_pword"/>
  4075. </dp:section1>
  4076. <dp:section2 for="ctrl_m_connection_use_pword">
  4077. <xts:string id="IDS_SELECT_CONNECT_PASSWORD_PROMPT"/>
  4078. </dp:section2>
  4079. </dp:choice>
  4080. </dp:groupItem>
  4081. </dp:group>
  4082. </out:if>
  4083. <out:if test="$wizard = 'true'">
  4084. <out:call-template name="gen-create-signon">
  4085. <out:with-param name="form-read-only" select="$form-read-only"/>
  4086. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  4087. </out:call-template>
  4088. </out:if>
  4089. </dp:section3>
  4090. </out:if>
  4091. <out:if test="contains(' oracle ', concat(' ',$connectionType,' '))">
  4092. <dp:section1>
  4093. <utml:input type="radio" name="authentication" value="signon" onclick="onChangeAuthentication();" id="ctrl_authentication_signon"/>
  4094. </dp:section1>
  4095. <dp:section2 for="ctrl_authentication_signon">
  4096. <out:choose>
  4097. <out:when test="$wizard='false'"><xts:string id="IDS_SELECT_CONNECT_SIGNON_PROPERTY_DIALOG"/></out:when>
  4098. <out:otherwise><xts:string id="IDS_SELECT_CONNECT_SIGNONS"/></out:otherwise>
  4099. </out:choose>
  4100. </dp:section2>
  4101. <dp:section3>
  4102. <dp:group>
  4103. <dp:groupItem>
  4104. <dp:choice noSpace="true">
  4105. <dp:section1>
  4106. <utml:input type="checkbox" name="m_connection_use_userid" onclick="updateSignonSection(this.checked);" id="ctrl_m_connection_use_userid"/>
  4107. </dp:section1>
  4108. <dp:section2 for="ctrl_m_connection_use_userid">
  4109. <xts:string id="IDS_SELECT_CONNECT_USERID_PROMPT"/>
  4110. </dp:section2>
  4111. </dp:choice>
  4112. </dp:groupItem>
  4113. </dp:group>
  4114. <dp:group>
  4115. <dp:groupItem>
  4116. <dp:choice noSpace="true">
  4117. <dp:section1>
  4118. <utml:input type="checkbox" name="m_connection_use_pword" onclick="togglePasswordCheckbox()" id="ctrl_m_connection_use_pword"/>
  4119. </dp:section1>
  4120. <dp:section2 for="ctrl_m_connection_use_pword">
  4121. <xts:string id="IDS_SELECT_CONNECT_PASSWORD_PROMPT"/>
  4122. </dp:section2>
  4123. </dp:choice>
  4124. </dp:groupItem>
  4125. </dp:group>
  4126. <out:if test="$wizard = 'true'">
  4127. <out:call-template name="gen-create-signon">
  4128. <out:with-param name="form-read-only" select="$form-read-only"/>
  4129. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  4130. </out:call-template>
  4131. </out:if>
  4132. </dp:section3>
  4133. </out:if>
  4134. </dp:choice>
  4135. </utml:radio-group>
  4136. </out:otherwise>
  4137. </out:choose>
  4138. </out:when>
  4139. <out:when test="$connectionType='json' ">
  4140. <out:variable name="dcx-authentication-type">
  4141. <out:choose>
  4142. <out:when test="key('env-param','m_connection_authentication_type') != ''">
  4143. <out:value-of select="string(key('env-param','m_connection_authentication_type'))"/>
  4144. </out:when>
  4145. <out:when test="key('env-param','m_p_connectionString') != ''">
  4146. <out:value-of select="substring-before(substring-after(string(key('env-param','m_p_connectionString')), ';AUTHENTICATION_TYPE='), ';')"/>
  4147. </out:when>
  4148. <out:otherwise>
  4149. <out:value-of select="'None'"/>
  4150. </out:otherwise>
  4151. </out:choose>
  4152. </out:variable>
  4153. <dp:input>
  4154. <dp:section1 for="ctrl_m_connection_authentication_type">
  4155. <xts:string id="IDS_SELECT_CONNECT_AUTHENTICATION_TYPE"/>
  4156. </dp:section1>
  4157. <dp:section2>
  4158. <utml:select id="ctrl_m_connection_authentication_type" name="m_connection_authentication_type" size="1" utml:update="true" onchange="changeAuthenticationType();">
  4159. <!--
  4160. <utml:option value="None">
  4161. <xts:string id="IDS_SELECT_CONNECT_NONE"/>
  4162. </utml:option>
  4163. <utml:option value="APIKey">
  4164. <xts:string id="IDS_SELECT_CONNECT_API_KEY"/>
  4165. </utml:option>
  4166. <utml:option value="Basic">
  4167. <xts:string id="IDS_SELECT_CONNECT_BASIC"/>
  4168. </utml:option>
  4169. <utml:option value="OAuth1.0">
  4170. <xts:string id="IDS_SELECT_CONNECT_OAUTH1"/>
  4171. </utml:option>
  4172. <utml:option value="OAuth2.0">
  4173. <xts:string id="IDS_SELECT_CONNECT_OAUTH2"/>
  4174. </utml:option>
  4175. -->
  4176. </utml:select>
  4177. <utml:input id="input_m_connection_auth_type_keep_state" name="m_connection_auth_type_keep_state" type="hidden"/>
  4178. <utml:input id="input_m_trace_subtype_change" name="m_trace_subtype_change" type="hidden"/>
  4179. </dp:section2>
  4180. </dp:input>
  4181. <script language="javascript">
  4182. function changeAuthenticationType()
  4183. {
  4184. document.pform.m_connection_auth_type_keep_state.value = document.pform.m_connection_authentication_type.value;
  4185. document.pform.m_trace_subtype_change.value = "false";
  4186. document.pform.submit();
  4187. }
  4188. function clearEncryptedPassword()
  4189. {
  4190. if (document.pform.passwordEncrypted)
  4191. document.pform.passwordEncrypted.value = '';
  4192. }
  4193. function authenticate()
  4194. {
  4195. var f = document.pform;
  4196. var authString = f.action;
  4197. if (f.m_connection_authentication_type.value == 'OAuth1.0') {
  4198. authString += '/oauth1?';
  4199. authString += 'temporary_token_endpoint=' + f.m_connection_temporary_token_endpoint.value;
  4200. authString += '&amp;authorization_endpoint=' + f.m_connection_authorization_endpoint.value;
  4201. authString += '&amp;token_endpoint=' + f.m_connection_token_endpoint.value;
  4202. authString += '&amp;reponse_type=code';
  4203. authString += '&amp;state=' + f.m_name.value;
  4204. window.open(authString);
  4205. }
  4206. if (f.m_connection_authentication_type.value == 'OAuth2.0') {
  4207. authString += '/oauth2?';
  4208. authString += 'authorization_endpoint=' + f.m_connection_authorization_endpoint.value;
  4209. authString += '&amp;token_endpoint=' + f.m_connection_token_endpoint.value;
  4210. if (f.m_connection_scope.value)
  4211. {
  4212. authString += '&amp;scope=' + f.m_connection_scope.value;
  4213. }
  4214. authString += '&amp;state=' + f.m_name.value;
  4215. window.open(authString);
  4216. }
  4217. }
  4218. </script>
  4219. <out:choose>
  4220. <out:when test="$dcx-authentication-type='OAuth1.0'">
  4221. <dp:input>
  4222. <dp:section1 for="ctrl_m_connection_temporary_token_endpoint">
  4223. <xts:string id="IDS_SELECT_CONNECT_TEMPORARY_TOKEN_ENDPOINT"/>
  4224. </dp:section1>
  4225. <dp:section2>
  4226. <utml:input type="text" name="m_connection_temporary_token_endpoint" size="53" id="ctrl_m_connection_temporary_token_endpoint"/>
  4227. </dp:section2>
  4228. </dp:input>
  4229. <dp:input>
  4230. <dp:section1 for="ctrl_m_connection_authorization_endpoint">
  4231. <xts:string id="IDS_SELECT_CONNECT_AUTHORIZATION_ENDPOINT"/>
  4232. </dp:section1>
  4233. <dp:section2>
  4234. <utml:input type="text" name="m_connection_authorization_endpoint" size="53" id="ctrl_m_connection_authorization_endpoint"/>
  4235. </dp:section2>
  4236. </dp:input>
  4237. <dp:input>
  4238. <dp:section1 for="ctrl_m_connection_token_endpoint">
  4239. <xts:string id="IDS_SELECT_CONNECT_TOKEN_ENDPOINT"/>
  4240. </dp:section1>
  4241. <dp:section2>
  4242. <utml:input type="text" name="m_connection_token_endpoint" size="53" id="ctrl_m_connection_token_endpoint"/>
  4243. </dp:section2>
  4244. </dp:input>
  4245. </out:when>
  4246. <out:when test="$dcx-authentication-type='OAuth2.0'">
  4247. <dp:input>
  4248. <dp:section1 for="ctrl_m_connection_authorization_endpoint">
  4249. <xts:string id="IDS_SELECT_CONNECT_AUTHORIZATION_ENDPOINT"/>
  4250. </dp:section1>
  4251. <dp:section2>
  4252. <utml:input type="text" name="m_connection_authorization_endpoint" size="53" id="ctrl_m_connection_authorization_endpoint"/>
  4253. </dp:section2>
  4254. </dp:input>
  4255. <dp:input>
  4256. <dp:section1 for="ctrl_m_connection_token_endpoint">
  4257. <xts:string id="IDS_SELECT_CONNECT_TOKEN_ENDPOINT"/>
  4258. </dp:section1>
  4259. <dp:section2>
  4260. <utml:input type="text" name="m_connection_token_endpoint" size="53" id="ctrl_m_connection_token_endpoint"/>
  4261. </dp:section2>
  4262. </dp:input>
  4263. <dp:input>
  4264. <dp:section1 for="ctrl_m_connection_scope">
  4265. <xts:string id="IDS_SELECT_CONNECT_SCOPE"/>
  4266. </dp:section1>
  4267. <dp:section2>
  4268. <utml:input type="text" name="m_connection_scope" size="120" id="ctrl_m_connection_scope"/>
  4269. </dp:section2>
  4270. </dp:input>
  4271. </out:when>
  4272. </out:choose>
  4273. <out:if test="$dcx-authentication-type != 'None'">
  4274. <out:call-template name="gen-create-signon">
  4275. <out:with-param name="form-read-only" select="$form-read-only"/>
  4276. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  4277. <out:with-param name="connectionType" select="$connectionType"/>
  4278. <out:with-param name="authenticationType" select="$dcx-authentication-type"/>
  4279. </out:call-template>
  4280. </out:if>
  4281. </out:when>
  4282. <!--
  4283. 1 choice
  4284. - The signons of this connection
  4285. -->
  4286. <out:otherwise>
  4287. <out:choose>
  4288. <out:when test="$uid-pwd-checkboxes != 'false'">
  4289. <dp:choice>
  4290. <dp:section1>
  4291. <utml:input type="checkbox" name="m_connection_use_userid" onclick="updateSignonSection(this.checked);" id="ctrl_m_connection_use_userid"/>
  4292. </dp:section1>
  4293. <dp:section2 for="ctrl_m_connection_use_userid">
  4294. <xts:string id="IDS_SELECT_CONNECT_USERID_PROMPT"/>
  4295. </dp:section2>
  4296. <dp:section3>
  4297. <dp:group>
  4298. <dp:groupItem>
  4299. <dp:choice noSpace="true">
  4300. <dp:section1>
  4301. <utml:input type="checkbox" name="m_connection_use_pword" onclick="togglePasswordCheckbox()" id="ctrl_m_connection_use_pword">
  4302. <out:if test="not(key('env-param','m_connection_use_userid'))">
  4303. <out:attribute name="disabled">disabled</out:attribute>
  4304. </out:if>
  4305. </utml:input>
  4306. </dp:section1>
  4307. <dp:section2 for="ctrl_m_connection_use_pword">
  4308. <xts:string id="IDS_SELECT_CONNECT_PASSWORD_PROMPT"/>
  4309. </dp:section2>
  4310. </dp:choice>
  4311. </dp:groupItem>
  4312. </dp:group>
  4313. <out:if test="$wizard != 'false'">
  4314. <dp:group>
  4315. <dp:groupItem>
  4316. <out:call-template name="gen-create-signon">
  4317. <out:with-param name="form-read-only" select="$form-read-only"/>
  4318. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  4319. </out:call-template>
  4320. </dp:groupItem>
  4321. </dp:group>
  4322. </out:if>
  4323. </dp:section3>
  4324. </dp:choice>
  4325. </out:when>
  4326. <out:otherwise>
  4327. <out:call-template name="gen-create-signon">
  4328. <out:with-param name="form-read-only" select="$form-read-only"/>
  4329. <out:with-param name="utml-form-name" select="$utml-form-name"/>
  4330. </out:call-template>
  4331. </out:otherwise>
  4332. </out:choose>
  4333. </out:otherwise>
  4334. </out:choose>
  4335. </lyt:section>
  4336. </lyt:layout>
  4337. </out:if>
  4338. </out:template>
  4339. <!-- This template is special for contributor -->
  4340. <out:template name="gen-contributor-section">
  4341. <out:param name="form-read-only"/>
  4342. <out:param name="utml-form-name"/>
  4343. <out:param name="uid-pwd-checkboxes" select="'false'"/>
  4344. <out:param name="connectionType"/>
  4345. <out:param name="wizard" select="'false'"/>
  4346. <out:if test="not($wizard = 'false' and $uid-pwd-checkboxes = 'false')">
  4347. <lyt:layout title="" style="1" border="no">
  4348. <lyt:section>
  4349. <out:variable name="available_namespace">
  4350. <out:choose>
  4351. <out:when test="/root/namespaces/cm:queryResponse/cm:namespace/*">true</out:when>
  4352. <out:otherwise>false</out:otherwise>
  4353. </out:choose>
  4354. </out:variable>
  4355. <dp:input>
  4356. <dp:section1>
  4357. <xts:string id="IDS_SELECT_CONNECT_FINANCE_EXTERNAL_NAMESPACE"/>
  4358. </dp:section1>
  4359. <dp:section2>
  4360. <xsl:call-template name="dcx:externalNamespace"/>
  4361. </dp:section2>
  4362. </dp:input>
  4363. </lyt:section>
  4364. </lyt:layout>
  4365. </out:if>
  4366. </out:template>
  4367. </xsl:template>
  4368. <!--
  4369. Template that generates the namespace dropdown list
  4370. -->
  4371. <xsl:template name="dcx:externalNamespace">
  4372. <out:variable name="showTransformUserIdentification">
  4373. <out:value-of select="datasources/datasource/supportsUserIdentificationTransform"/>
  4374. </out:variable>
  4375. <utml:select name="m_p_credentialNamespaces" utml:track="true" >
  4376. <out:attribute name="aria-label">
  4377. <xts:string id="IDS_SELECT_CONNECT_EXTERNAL_NAMESPACE"/>
  4378. </out:attribute>
  4379. <out:choose>
  4380. <out:when test="$available_namespace='false'">
  4381. <utml:option>
  4382. <xsl:text/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;<xsl:text/>
  4383. </utml:option>
  4384. </out:when>
  4385. <out:otherwise>
  4386. <out:for-each select="/root/namespaces/cm:queryResponse/cm:namespace">
  4387. <out:variable name="aNamespace">
  4388. <out:choose>
  4389. <out:when test="cm:active='false'">
  4390. <out:text/>
  4391. <xts:string id="IDS_DIRECTORY_NAMESPACE_INACTIVE">
  4392. <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
  4393. </xts:string>
  4394. <out:text/>
  4395. </out:when>
  4396. <out:otherwise>
  4397. <out:text/>
  4398. <xts:string id="IDS_DIRECTORY_NAMESPACE_ACTIVE">
  4399. <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
  4400. </xts:string>
  4401. <out:text/>
  4402. </out:otherwise>
  4403. </out:choose>
  4404. </out:variable>
  4405. <utml:option>
  4406. <utml:value>
  4407. <out:value-of select="cm:searchPath"/>
  4408. </utml:value>
  4409. <out:value-of select="$aNamespace"/>
  4410. </utml:option>
  4411. </out:for-each>
  4412. </out:otherwise>
  4413. </out:choose>
  4414. </utml:select>
  4415. <out:if test="$showTransformUserIdentification = 'true'">
  4416. <dp:choice>
  4417. <dp:section1>
  4418. <utml:input type="checkbox" name="m_transformUserIdentification" id="ctrl_m_transformUserIdentification"/>
  4419. </dp:section1>
  4420. <dp:section2 for="ctrl_m_transformUserIdentification">
  4421. <xts:string id="IDS_SELECT_CONNECT_TRANSFORM_USER_IDENTIFIER"/>
  4422. </dp:section2>
  4423. </dp:choice>
  4424. </out:if>
  4425. </xsl:template>
  4426. <xsl:template match="dcx:commandTemplate">
  4427. <out:template name="dcx-commandTemplate">
  4428. <out:param name="form-read-only"/>
  4429. <out:param name="utml-form-name" select="'pform'"/>
  4430. <out:param name="canWrite" select="false()"/>
  4431. <out:param name="dataSourceConnection" select="false()"/>
  4432. <out:param name="inWizard" select="true()"/>
  4433. <script language="javascript">
  4434. function setCommand(command)
  4435. {
  4436. var frm = document.<out:value-of select="$utml-form-name"/>;
  4437. frm.commandToEdit.value = command;
  4438. frm.ps_nav_op.value = 'push';
  4439. frm.m.value = '<out:value-of select="$app"/>/set_commands.xts';
  4440. frm.submit();
  4441. }
  4442. function performAction(action)
  4443. {
  4444. var frm = document.<out:value-of select="$utml-form-name"/>;
  4445. frm.actionOnCommands.value = action;
  4446. frm.ps_nav_op.value = 'maintain';
  4447. frm.m.value = '<out:value-of select="$app"/>/<out:value-of select="$mname"/>';
  4448. frm.submit();
  4449. }
  4450. </script>
  4451. <utml:input type="hidden" name="commandToEdit" value="" utml:update="false"/>
  4452. <utml:input type="hidden" name="displayStringBeingEdited" value="" utml:uptdate="false"/>
  4453. <utml:input type="hidden" name="actionOnCommands" value="" utml:update="false"/>
  4454. <span id="lbl_selectAll_deselectAlllistpager_connections" style="position: absolute;margin-left: -9999px; margin-top: -9999px; "><xts:string id="IDS_SELECT_DESELECT_ALL" encode="html"/></span>
  4455. <lyt:layout style="1">
  4456. <lyt:section>
  4457. <out:choose>
  4458. <out:when test="not($inWizard) and $dataSourceConnection">
  4459. <dp:choice>
  4460. <dp:section1 wrap="true" type="hint"><xts:string id="IDS_NEW_INTRO_CONNECTION_COMMANDS"/></dp:section1>
  4461. </dp:choice>
  4462. </out:when>
  4463. <out:when test="not($inWizard)">
  4464. <dp:choice title="IDS_PROP_CONN_COMMAND_TITLE">
  4465. <dp:section1 wrap="true" type="hint">
  4466. <xts:string id="IDS_NEW_INTRO_DATASOURCE_COMMANDS"/>
  4467. </dp:section1>
  4468. </dp:choice>
  4469. </out:when>
  4470. </out:choose>
  4471. <cf:main-pager-section name="listpager" form="pform" width="80%">
  4472. <cf:param name="target">concat($app,'/',$mname)</cf:param>
  4473. <cf:param name="item-path">/root/commandBlocks/command</cf:param>
  4474. <cf:param name="lines-per-page">
  4475. <out:value-of select="key('session-param', 'linesPerPage')"/>
  4476. </cf:param>
  4477. <cf:param name="actions">
  4478. <!-- reset to parent value -->
  4479. <cp:action>
  4480. <out:if test="$canWrite and $dataSourceConnection">
  4481. <a href="javascript:performAction('reset');">
  4482. <xsl:text/><xts:string id="IDS_PROP_SETTINGS_RESET_TO_PARENT"/><xsl:text/>
  4483. </a>
  4484. </out:if>
  4485. </cp:action>
  4486. <!-- clear -->
  4487. <cp:action>
  4488. <out:if test="$canWrite and not($dataSourceConnection)">
  4489. <a href="javascript:performAction('clear');">
  4490. <xsl:text/><xts:string id="IDS_CLEAR"/><xsl:text/>
  4491. </a>
  4492. </out:if>
  4493. </cp:action>
  4494. </cf:param>
  4495. <cf:param name="rows">
  4496. <cp:tableHeader>
  4497. <out:choose>
  4498. <out:when test="$dataSourceConnection or (not($dataSourceConnection) and not($inWizard))">
  4499. <cp:columnHeader width="16" toggleName="list_checkbox_" toggleLabel="lbl_selectAll_deselectAlllistpager_connection">
  4500. <cp:columnHeaderForm><out:value-of select="$utml-form-name"/></cp:columnHeaderForm>
  4501. </cp:columnHeader>
  4502. <cp:columnHeader width="30%">
  4503. <xts:string id="IDS_HEADING_REPORT_NAME"/>
  4504. </cp:columnHeader>
  4505. <cp:columnHeader width="50%">
  4506. <xts:string id="IDS_PROP_SETTINGS_HEADING_VALUE"/>
  4507. </cp:columnHeader>
  4508. <cp:columnHeader width="20%">
  4509. <out:choose>
  4510. <out:when test="$dataSourceConnection">
  4511. <xts:string id="IDS_PROP_SETTINGS_HEADING_ACQUIRED"/>
  4512. </out:when>
  4513. <out:otherwise>
  4514. <xts:string id="IDS_PROP_DATASOURCE_DEL_CHILD"/>
  4515. </out:otherwise>
  4516. </out:choose>
  4517. </cp:columnHeader>
  4518. </out:when>
  4519. <out:otherwise>
  4520. <cp:columnHeader width="16" toggleName="list_checkbox_" toggleLabel="lbl_selectAll_deselectAlllistpager_connection">
  4521. <cp:columnHeaderForm><out:value-of select="$utml-form-name"/></cp:columnHeaderForm>
  4522. </cp:columnHeader>
  4523. <cp:columnHeader width="30%">
  4524. <xts:string id="IDS_HEADING_REPORT_NAME"/>
  4525. </cp:columnHeader>
  4526. <cp:columnHeader width="100%">
  4527. <xts:string id="IDS_PROP_SETTINGS_HEADING_VALUE"/>
  4528. </cp:columnHeader>
  4529. </out:otherwise>
  4530. </out:choose>
  4531. </cp:tableHeader>
  4532. <cp:tableContent>
  4533. <out:variable name="currentCommand" select="propertyName"/>
  4534. <utml:input type="hidden">
  4535. <utml:name>
  4536. <out:value-of select="concat('m_display_cbp_',$currentCommand)"/>
  4537. </utml:name>
  4538. <utml:value>
  4539. <out:value-of select="displayString"/>
  4540. </utml:value>
  4541. </utml:input>
  4542. <!-- Fix for bug 437219 - we can't use a utml control here since it'll add extra line spaces in the hidden input.
  4543. Related to bug fix for 400901 in formlogic. -->
  4544. <out:variable name="controlName" select="concat('m_cbp_',$currentCommand)"/>
  4545. <input type="hidden" name="{'{$controlName}'}" value="{'{value}'}"/>
  4546. <!-- keep track if the value has changed -->
  4547. <utml:input type="hidden">
  4548. <utml:name>
  4549. <out:value-of select="concat('changed_m_cbp_',$currentCommand)"/>
  4550. </utml:name>
  4551. <utml:value>
  4552. <out:choose>
  4553. <out:when test="changed='1'">1</out:when>
  4554. <out:otherwise>0</out:otherwise>
  4555. </out:choose>
  4556. </utml:value>
  4557. </utml:input>
  4558. <out:choose>
  4559. <out:when test="$dataSourceConnection or (not($dataSourceConnection) and not($inWizard))">
  4560. <cp:columnContent>
  4561. <input type="checkbox">
  4562. <out:attribute name="name">
  4563. <out:value-of select="concat('list_checkbox_',position())"/>
  4564. </out:attribute>
  4565. <out:attribute name="value">
  4566. <out:value-of select="propertyName"/>
  4567. </out:attribute>
  4568. <out:attribute name="aria-label">
  4569. <xts:string id="IDS_SELECTION_FOR_PAGER_ITEM"><xts:param name="pagerItemName"><out:value-of select="displayString"/></xts:param></xts:string>
  4570. </out:attribute>
  4571. </input>
  4572. </cp:columnContent>
  4573. <cp:columnContent scope="row">
  4574. <out:value-of select="displayString"/>
  4575. </cp:columnContent>
  4576. <cp:columnContent valign="top">
  4577. <dp:section1>
  4578. <dp:list>
  4579. <dp:section>
  4580. <out:choose>
  4581. <out:when test="value != ''">
  4582. <out:choose>
  4583. <out:when test="string-length(value) > 45">
  4584. <out:variable name="ellipsis"><xts:string id="IDS_LIST_ELLIPSIS"/></out:variable>
  4585. <out:value-of select="concat(substring(value,1,42),$ellipsis)"/>
  4586. </out:when>
  4587. <out:otherwise><out:value-of select="value"/></out:otherwise>
  4588. </out:choose>
  4589. <dp:text><out:value-of select="' '"/></dp:text>
  4590. <out:if test="$canWrite">
  4591. <a>
  4592. <out:attribute name="href">javascript:setCommand('<out:value-of select="xtsext:javascriptencode(string($currentCommand))"/>');</out:attribute>
  4593. <out:attribute name="aria-label"><xts:string id="IDS_PROP_CONN_EDIT_COMMAND_ARIA"><xts:param name="commandName"><out:value-of select="displayString"/></xts:param></xts:string></out:attribute>
  4594. <out:text/><xts:string id="IDS_PROP_CONN_EDIT_COMMAND"/><out:text/>
  4595. </a>
  4596. </out:if>
  4597. </out:when>
  4598. <out:otherwise>
  4599. <xts:string id="IDS_PROP_CONN_COMMAND_NONE"/>
  4600. <dp:text><out:value-of select="' '"/></dp:text>
  4601. <out:if test="$canWrite">
  4602. <a>
  4603. <out:attribute name="href">javascript:setCommand('<out:value-of select="xtsext:javascriptencode(string($currentCommand))"/>');</out:attribute>
  4604. <out:attribute name="aria-label"><xts:string id="IDS_PROP_CONN_SET_COMMAND_ARIA"><xts:param name="commandName"><out:value-of select="displayString"/></xts:param></xts:string></out:attribute>
  4605. <out:text/><xts:string id="IDS_PROP_CONN_SET_COMMAND"/><out:text/>
  4606. </a>
  4607. </out:if>
  4608. </out:otherwise>
  4609. </out:choose>
  4610. </dp:section>
  4611. </dp:list>
  4612. </dp:section1>
  4613. </cp:columnContent>
  4614. <cp:columnContent>
  4615. <out:choose>
  4616. <out:when test="$dataSourceConnection">
  4617. <out:choose>
  4618. <out:when test="acquired = 'true'">
  4619. <xts:string id="IDS_PROP_SETTINGS_ACQUIRED_YES"/>
  4620. </out:when>
  4621. <out:otherwise>
  4622. <xts:string id="IDS_PROP_SETTINGS_ACQUIRED_NO"/>
  4623. </out:otherwise>
  4624. </out:choose>
  4625. <!-- keep track if the value is acquired -->
  4626. <utml:input type="hidden">
  4627. <utml:name>
  4628. <out:value-of select="concat('m_acquired_',$currentCommand)"/>
  4629. </utml:name>
  4630. <utml:value>
  4631. <out:value-of select="acquired"/>
  4632. </utml:value>
  4633. </utml:input>
  4634. </out:when>
  4635. <out:otherwise>
  4636. <utml:input type="checkbox">
  4637. <out:attribute name="aria-label"><xts:string id="IDS_PROP_DATASOURCE_DEL_CHILD_ARIA"><xts:param name="commandName"><out:value-of select="displayString"/></xts:param></xts:string></out:attribute>
  4638. <utml:name>
  4639. <out:value-of select="concat('m_cbd_',$currentCommand)"/>
  4640. </utml:name>
  4641. <utml:value>
  4642. <out:value-of select="'true'"/>
  4643. </utml:value>
  4644. </utml:input>
  4645. </out:otherwise>
  4646. </out:choose>
  4647. </cp:columnContent>
  4648. </out:when>
  4649. <out:otherwise>
  4650. <cp:columnContent>
  4651. <input type="checkbox">
  4652. <out:attribute name="name">
  4653. <out:value-of select="concat('list_checkbox_',position())"/>
  4654. </out:attribute>
  4655. <out:attribute name="value">
  4656. <out:value-of select="propertyName"/>
  4657. </out:attribute>
  4658. <out:attribute name="aria-label">
  4659. <xts:string id="IDS_SELECTION_FOR_PAGER_ITEM"><xts:param name="pagerItemName"><out:value-of select="displayString"/></xts:param></xts:string>
  4660. </out:attribute>
  4661. </input>
  4662. </cp:columnContent>
  4663. <cp:columnContent scope="row">
  4664. <out:value-of select="displayString"/>
  4665. </cp:columnContent>
  4666. <cp:columnContent valign="top">
  4667. <dp:section1>
  4668. <dp:list>
  4669. <dp:section>
  4670. <out:choose>
  4671. <out:when test="value != ''">
  4672. <out:choose>
  4673. <out:when test="string-length(value) > 45">
  4674. <out:variable name="ellipsis"><xts:string id="IDS_LIST_ELLIPSIS"/></out:variable>
  4675. <out:value-of select="concat(substring(value,1,42),$ellipsis)"/>
  4676. </out:when>
  4677. <out:otherwise><out:value-of select="value"/></out:otherwise>
  4678. </out:choose>
  4679. <dp:text><out:value-of select="' '"/></dp:text>
  4680. <a>
  4681. <out:attribute name="href">javascript:setCommand('<out:value-of select="xtsext:javascriptencode(string($currentCommand))"/>','<out:value-of select="xtsext:javascriptencode(string(displayString))"/>');</out:attribute>
  4682. <out:attribute name="aria-label"><xts:string id="IDS_PROP_CONN_EDIT_COMMAND_ARIA"><xts:param name="commandName"><out:value-of select="displayString"/></xts:param></xts:string></out:attribute>
  4683. <out:text/><xts:string id="IDS_PROP_CONN_EDIT_COMMAND"/><out:text/>
  4684. </a>
  4685. </out:when>
  4686. <out:otherwise>
  4687. <xts:string id="IDS_PROP_CONN_COMMAND_NONE"/>
  4688. <dp:text><out:value-of select="' '"/></dp:text>
  4689. <a>
  4690. <out:attribute name="href">javascript:setCommand('<out:value-of select="xtsext:javascriptencode(string($currentCommand))"/>','<out:value-of select="xtsext:javascriptencode(string(displayString))"/>');</out:attribute>
  4691. <out:attribute name="aria-label"><xts:string id="IDS_PROP_CONN_SET_COMMAND_ARIA"><xts:param name="commandName"><out:value-of select="displayString"/></xts:param></xts:string></out:attribute>
  4692. <out:text/><xts:string id="IDS_PROP_CONN_SET_COMMAND"/><out:text/>
  4693. </a>
  4694. </out:otherwise>
  4695. </out:choose>
  4696. </dp:section>
  4697. </dp:list>
  4698. </dp:section1>
  4699. </cp:columnContent>
  4700. </out:otherwise>
  4701. </out:choose>
  4702. </cp:tableContent>
  4703. </cf:param>
  4704. </cf:main-pager-section>
  4705. </lyt:section>
  4706. </lyt:layout>
  4707. </out:template>
  4708. </xsl:template>
  4709. <xsl:template match="dcx:cubePassword">
  4710. <script language="javascript">
  4711. function toggleCubePassword()
  4712. {
  4713. frm = document.pform;
  4714. <xsl:if test="not(@specifyConnection) or @specifyConnection='false'">
  4715. frm.m_connection_default_signon.disabled = !frm.cube_password_checkbox.checked;
  4716. toggleCreateCubeSignon();
  4717. </xsl:if>
  4718. }
  4719. <xsl:if test="not(@specifyConnection) or @specifyConnection='false'">
  4720. function clearCubePassword()
  4721. {
  4722. if (document.pform.cubePasswordEncrypted)
  4723. document.pform.cubePasswordEncrypted.value = '';
  4724. }
  4725. function toggleCreateCubeSignon()
  4726. {
  4727. frm = document.pform;
  4728. if (frm.cube_password_checkbox.checked)
  4729. {
  4730. frm.m_cube_password.disabled = !frm.m_connection_default_signon.checked;
  4731. frm.m_cube_confirm_password.disabled = !frm.m_connection_default_signon.checked;
  4732. }
  4733. else
  4734. {
  4735. frm.m_cube_password.disabled = true;
  4736. frm.m_cube_confirm_password.disabled = true;
  4737. }
  4738. }
  4739. </xsl:if>
  4740. </script>
  4741. <lyt:layout style="1" intro="IDS_PROP_CONN_CUBE_PASSWORD_HINT">
  4742. <lyt:section>
  4743. <out:variable name="default_signon_checked">
  4744. <out:choose>
  4745. <out:when test="/root/env/param[@name='m_connection_default_signon'] and /root/env/param[@name='m_connection_default_signon']='true'">true</out:when>
  4746. <out:otherwise>false</out:otherwise>
  4747. </out:choose>
  4748. </out:variable>
  4749. <dp:choice>
  4750. <dp:section1>
  4751. <utml:input type="checkbox" name="cube_password_checkbox" value="true" onclick="toggleCubePassword()" id="ctrl_cube_password_checkbox"/>
  4752. </dp:section1>
  4753. <dp:section2 for="ctrl_cube_password_checkbox">
  4754. <xts:string id="IDS_PROP_CONN_CUBE_PASSWORD"/>
  4755. </dp:section2>
  4756. <xsl:if test="not(@specifyConnection) or @specifyConnection='false'">
  4757. <dp:section3>
  4758. <dp:choice>
  4759. <dp:section1>
  4760. <utml:input type="checkbox" name="m_connection_default_signon" onclick="toggleCreateCubeSignon();" utml:track="true" id="ctrl_m_connection_default_signon">
  4761. <out:attribute name="disabled">disabled</out:attribute>
  4762. <out:if test="$default_signon_checked='true'">
  4763. <out:attribute name="checked">checked</out:attribute>
  4764. </out:if>
  4765. </utml:input>
  4766. </dp:section1>
  4767. <dp:section2 for="ctrl_m_connection_default_signon">
  4768. <out:text><xts:string id="IDS_SELECT_CONNECT_DEFAULT_SIGNON_HINT"/></out:text>
  4769. </dp:section2>
  4770. <dp:section3>
  4771. <dp:input>
  4772. <dp:section1 for="ctrl_m_cube_password">
  4773. <xts:string id="IDS_SELECT_CONNECT_PASSWORD"/>
  4774. </dp:section1>
  4775. <dp:section2>
  4776. <utml:input type="password" name="m_cube_password" size="53" utml:update="false" onchange="clearCubePassword()" autocomplete="off" id="ctrl_m_cube_password">
  4777. <out:if test="not(key('env-param','cube_password_checkbox'))">
  4778. <out:attribute name="disabled">disabled</out:attribute>
  4779. </out:if>
  4780. <out:attribute name="value">
  4781. <out:if test="key('env-param','cubePasswordEncrypted')!=''">********</out:if>
  4782. </out:attribute>
  4783. </utml:input>
  4784. </dp:section2>
  4785. </dp:input>
  4786. <dp:input>
  4787. <dp:section1 for="ctrl_m_cube_confirm_password">
  4788. <xts:string id="IDS_SELECT_CONNECT_CONFIRMPASSWORD"/>
  4789. </dp:section1>
  4790. <dp:section2>
  4791. <utml:input type="password" name="m_cube_confirm_password" size="53" utml:update="false" onchange="clearCubePassword()" autocomplete="off" id="ctrl_m_cube_confirm_password">
  4792. <out:if test="not(key('env-param','cube_password_checkbox'))">
  4793. <out:attribute name="disabled">disabled</out:attribute>
  4794. </out:if>
  4795. <out:attribute name="value">
  4796. <out:if test="key('env-param','cubePasswordEncrypted')!=''">********</out:if>
  4797. </out:attribute>
  4798. </utml:input>
  4799. </dp:section2>
  4800. </dp:input>
  4801. </dp:section3>
  4802. </dp:choice>
  4803. </dp:section3>
  4804. </xsl:if>
  4805. </dp:choice>
  4806. </lyt:section>
  4807. </lyt:layout>
  4808. </xsl:template>
  4809. <xsl:template match="dcx:isDatasourceSignon">
  4810. <out:template name="dcx-isDatasourceSignon">
  4811. <out:param name="connectionString"/>
  4812. <out:choose>
  4813. <out:when test="key('env-param','m_p_credentialNamespaces') != ''">
  4814. <out:value-of select="'false'"/>
  4815. </out:when>
  4816. <out:when test="contains($connectionString,'Trusted_Connection=yes') or contains($connectionString,'Integrated Security=SSPI')">
  4817. <out:value-of select="'false'"/>
  4818. </out:when>
  4819. <out:when test="contains($connectionString, '^User ID:')">
  4820. <out:value-of select="'true'"/>
  4821. </out:when>
  4822. <out:otherwise>
  4823. <out:value-of select="'false'"/>
  4824. </out:otherwise>
  4825. </out:choose>
  4826. </out:template>
  4827. </xsl:template>
  4828. <!-- the main engine -->
  4829. <xsl:template match="*">
  4830. <xsl:copy>
  4831. <xsl:copy-of select="@*"/>
  4832. <xsl:apply-templates/>
  4833. </xsl:copy>
  4834. </xsl:template>
  4835. </xsl:stylesheet>