Become Member  Informations Help

> Finance & Stock Exchange > Bonds

Journal Register investor offers $25 mln infusion

Reuters: [2008-05-14 20:17:00]

NEW YORK, May 14 (Reuters) - A shareholder in Journal Register Co <JRCO.PK> said on Wednesday that he is willing to invest at least $25 million in return for a significant ownership stake, which could help the newspaper publisher avoid defaulting on its debt and risking bankruptcy.

Richard Barone of Ancora Capital Inc, a Cleveland-based investment firm, owns slightly more than 5 percent of the company's shares.

Journal Register said last week it risks defaulting on its debt by July 23, barring better second-quarter performance or an amendment to its credit agreement.

Barone told Reuters that the $25 million is contingent on Journal Register's lenders restructuring the loan.

Journal Register shares were delisted from the New York Stock Exchange after its stock fell below the minimum listing requirements. Shares were flat at 20 cents on Wednesday.

(Reporting by Robert MacMillan, editing by Phil Berlowitz) ((robert.macmillan@thomsonreuters.com; +1 646 223 6012; Reuters Messaging: robert.macmillan.reuters.com@reuters.net)) Click on http://blogs.reuters.com/category/themes/mediafile/ to see Reuters MediaFile blog Keywords: JOURNALREGISTER/

EURO CORP-Bond sales lift sentiment; spreads tighten

Reuters: [2008-05-14 18:05:00]

By Maya Thatcher

LONDON, May 14 (Reuters) - A wave of bond issuance kept the credit market busy on Wednesday, as issuers took advantage of tightened credit spreads in Europe following a rise in equities and softer-than-expected U.S. inflation data.

"It's very busy on the primary side, and the market is buoyant -- equities are rallying, credit coming back, life is good, the sun is shining in London," a trader said.

"The primary market is performing well, so there's this good mood in the market," the trader said.

By 1537 GMT, the Markit investment-grade iTraxx Europe index <ITRAC5EA=GFI> was at 71.75 basis points, according to Markit data, 2.25 basis points tighter versus late on Tuesday.

The iTraxx Crossover index <ITCRS5EA=GFI>, made up of 50 mostly "junk"-rated credits, was 13.5 basis points tighter at 426.5 basis points.

"The market feels better because equities are doing all right, so across the board there's some tightening momentum," a second London-based trader said.

The FTSEurofirst 300 <.FTEU3> index of top European shares was up 0.59 percent. Across the Atlantic, the Dow Jones industrial average <.DJI> and the Nasdaq Composite Index <.IXIC> climbed nearly 1 percent.

FEELGOOD FACTOR

Heavy activity in bond issuance gave markets a feelgood factor, with new deals from France Telecom <FTE.PA> automaker Daimler <DAIGn.DE> and consumer goods maker Unilever <ULVR.L>.

France Telecom sold both parts of its dual-tranche euro bond at the tight end of guidance, suggesting good demand.

The six-year, 750 million euro ($1.16 billion) tranche priced at mid-swaps plus 90 basis points. Guidance had been set at around 95 basis points over mid-swaps before being refined to 90-92 basis points over mid-swaps.

Guidance for the 10-year, 1.25 billion euro tranche was also cut ahead of the bond being sold.

The bond priced at mid-swaps plus 110 basis points. This is down from earlier indications of around 115 basis points over mid-swaps, and a subsequent refinement to 110-112 basis points.

Five-year credit default swaps on France Telecom, Europe's third-largest telecoms operator by market value, were slightly narrower on the bond, tightening 2.5 basis points to 78 basis points, according to Markit data.

German automaker Daimler priced a four-year, fixed-rate euro benchmark bond at mid-swaps plus 65 basis points, an official at one of the banks managing the sale said.

BNP Paribas, HSBC and UniCredit were joint lead managers on the bond sale.

Unilever, which makes Dove soap, Sunsilk shampoo and Knorr soups, tapped the primary market by selling a 750 million euro, five-year bond at 48 basis points over mid-swaps.

(Reporting by Maya Thatcher; editing by David Hulmes) ((maya.thatcher@reuters.com; +44 207 542 9202; Reuters Messaging: maya.thatcher.reuters.com@reuters.net))

* Reuters clients can view related news by double clicking on:

[EUB] All Eurobond news

[DBT] Debt reports

[EUB-ISU] New debt issues

[IGD] Investment-grade bonds

[HYD] High-yield bonds

[ABS] Asset-backed securities

[CDV] Credit derivatives news

[AAA] Credit ratings news

[TOP/DBT] Top fixed income news

[TOP/CREDIT] Top credit news

Other market reports:

[GVD/EUR] Euro government debt report

[US/] U.S. Treasury market report

[USC/] U.S. corporate bond report

[.EU] European stock market report

[.L] UK stock market report

[.N] Wall Street report

Guides:

For prices or rates, double click on: <EUROBONDS>

For credit ratings, double click on: <RRS0001>

For credit derivatives, double click on <CDSINDEX>

For top corporate bond issuers, double click on <0#TOPISSUER> ($1=.6467 Euro)

Keywords: MARKETS BONDS EUROCORP

EURO CORP-Bond sales lift sentiment; spreads tighten

Reuters: [2008-05-14 18:05:00]

By Maya Thatcher

LONDON, May 14 (Reuters) - A wave of bond issuance kept the credit market busy on Wednesday, as issuers took advantage of tightened credit spreads in Europe following a rise in equities and softer-than-expected U.S. inflation data.

"It's very busy on the primary side, and the market is buoyant -- equities are rallying, credit coming back, life is good, the sun is shining in London," a trader said.

"The primary market is performing well, so there's this good mood in the market," the trader said.

By 1537 GMT, the Markit investment-grade iTraxx Europe index <ITRAC5EA=GFI> was at 71.75 basis points, according to Markit data, 2.25 basis points tighter versus late on Tuesday.

The iTraxx Crossover index <ITCRS5EA=GFI>, made up of 50 mostly "junk"-rated credits, was 13.5 basis points tighter at 426.5 basis points.

"The market feels better because equities are doing all right, so across the board there's some tightening momentum," a second London-based trader said.

The FTSEurofirst 300 <.FTEU3> index of top European shares was up 0.59 percent. Across the Atlantic, the Dow Jones industrial average <.DJI> and the Nasdaq Composite Index <.IXIC> climbed nearly 1 percent.

FEELGOOD FACTOR

Heavy activity in bond issuance gave markets a feelgood factor, with new deals from France Telecom <FTE.PA> automaker Daimler <DAIGn.DE> and consumer goods maker Unilever <ULVR.L>.

France Telecom sold both parts of its dual-tranche euro bond at the tight end of guidance, suggesting good demand.

The six-year, 750 million euro ($1.16 billion) tranche priced at mid-swaps plus 90 basis points. Guidance had been set at around 95 basis points over mid-swaps before being refined to 90-92 basis points over mid-swaps.

Guidance for the 10-year, 1.25 billion euro tranche was also cut ahead of the bond being sold.

The bond priced at mid-swaps plus 110 basis points. This is down from earlier indications of around 115 basis points over mid-swaps, and a subsequent refinement to 110-112 basis points.

Five-year credit default swaps on France Telecom, Europe's third-largest telecoms operator by market value, were slightly narrower on the bond, tightening 2.5 basis points to 78 basis points, according to Markit data.

German automaker Daimler priced a four-year, fixed-rate euro benchmark bond at mid-swaps plus 65 basis points, an official at one of the banks managing the sale said.

BNP Paribas, HSBC and UniCredit were joint lead managers on the bond sale.

Unilever, which makes Dove soap, Sunsilk shampoo and Knorr soups, tapped the primary market by selling a 750 million euro, five-year bond at 48 basis points over mid-swaps.

(Reporting by Maya Thatcher; editing by David Hulmes) ((maya.thatcher@reuters.com; +44 207 542 9202; Reuters Messaging: maya.thatcher.reuters.com@reuters.net))

* Reuters clients can view related news by double clicking on:

[EUB] All Eurobond news

[DBT] Debt reports

[EUB-ISU] New debt issues

[IGD] Investment-grade bonds

[HYD] High-yield bonds

[ABS] Asset-backed securities

[CDV] Credit derivatives news

[AAA] Credit ratings news

[TOP/DBT] Top fixed income news

[TOP/CREDIT] Top credit news

Other market reports:

[GVD/EUR] Euro government debt report

[US/] U.S. Treasury market report

[USC/] U.S. corporate bond report

[.EU] European stock market report

[.L] UK stock market report

[.N] Wall Street report

Guides:

For prices or rates, double click on: <EUROBONDS>

For credit ratings, double click on: <RRS0001>

For credit derivatives, double click on <CDSINDEX>

For top corporate bond issuers, double click on <0#TOPISSUER> ($1=.6467 Euro)

Keywords: MARKETS BONDS EUROCORP

EURO GOVT-Bunds and rate futures fall on inflation worries

Reuters: [2008-05-14 17:44:00]

By Kirsten Donovan

LONDON, May 14 (Reuters) - Euro zone government bond and interest rate futures fell further on Wednesday as growing fears of global inflation pervaded fixed income markets and eroded rate cut expectations.

A run of stronger-than-expected inflation data from the UK this week has sent jitters through markets, although Bunds pared losses on Wednesday after data showed U.S. consumer price inflation grew less than expected in April [ID:nN14481285].

Euro zone interest rate futures began to price in a slim possibility of an European Central Bank rate hike, while short-dated euro zone swap rates also came under pressure.

"Some very bond unfriendly data is intensifying upward pressure at the short-end of the euro swap curve. In particular ...inflation data in the UK has put investor nerves on edge in all developed economies and rate expectations have spiked higher," said ICAP economist Don Smith.

At 1524 GMT June Bund futures <FGBLM8> were 65 ticks lower at 113.70, taking their loss this week to 1.3 points. Two-year bond yields <EU2YT=RR> were 9.2 basis points higher at 3.914 percent, while 10-year yields <EU10YT=RR> were 7.1 basis points higher at 4.165 percent.

Euribor interest rate futures <0#FEI:> were up to 13 ticks lower across the 2009 strip.

BNP Paribas strategists Alessandro Tentori meanwhile said Eonia futures were pricing in a between 5 and 10 percent chance of a 25 basis point ECB rate hike by September, while ICAP calculated a 20 percent chance of a hike by October.

The central bank has kept its key rate on hold at 4 percent through the credit crunch in an attempt to contain inflationary pressures.

A Reuters' poll showed the Bank of England will hold off cutting rates from 5.0 percent until the third quarter as it battles soaring inflation [ID:nL14799522].

The interbank cost of borrowing three month funds in dollar, sterling and euro rose on Wednesday, with spreads over secured lending rates widening again as markets trimmed expectations for interest rate cuts [ID:nL14605309] .

Three-month dollar Libor <USD3MFSR=> rose for the first time since April 21, up 4.5 basis points at 2.72000 percent, with OIS dollar spreads pushing back above 70 basis points.

"It's a rate expectation story today. There was a lot of inflation talk out of the U.S. yesterday which might indicate the Fed may not lower rates soon, although the market is probably way ahead of itself in terms of interest rates being raised," said a money markets trader.

Three-month sterling Libor rates rose for the first time since the end of March with the Libor/OIS sterling spread widening over two basis points.

Two-year swap rates <EURAB6E2Y=> were last at 4.61 percent, from 4.43 percent at the start of the week. 10-year rates <EURAB6E10Y=> were 4.59 from 4.44 percent, leaving the curve slightly inverted.

The 10-year swap spread widened to 42.2 basis points.

In supply, Italy sold 6 billion euros of five- and 30-year government bonds on Wednesday which analysts said met with a surprisingly strong bid premium for the long-dated issue [ID:nL14787369]. ((Reporting by Kirsten Donovan; kirsten.donovan.reuters.com@reuters.net, +44 20 7542 8675))

Keywords: MARKETS BONDS EURO

--------------MARKET SNAPSHOT AT 1531 GMT ------------------     
Futures continuous contract basis      
                   FUTURES          CASH YIELD   
THREE MONTH EURO 95.170 (-0.020)  3.982 (-0.007)  
TWO-YEAR SCHATZ  103.56 (-0.15)   3.902 (+0.080)  
10-YEAR BUND     113.71 (-0.64)   4.166 (+0.072)  
30-YEAR BUND                      4.670 (+0.027)  
 Current levels versus prior European close       
----------------------------------------------------------- 
          Reuters Terminal users can see related statistics, 
 contributions and news by clicking on: 
 NEWS 
 Euro debt market     [GVD/EUR] Debt technicals       [TECH/DBT] 
 Euro news headlines   [EUR-T]  ECB news headlines       [ECB-T] 
 European debt news [EUROPE-D]  West Europe debt news    [WEU-D] 
 All EU news          [EU-LEN]  All technical reports     [INSI] 
 Eurobond market        [EUB/]  Eurobond glance     [GLANCE/EUB] 
  
 PRICES/INDICES 
 Euro benchmark curve <0#EUBMK=> 
 EMU debt market overview <0#EUROCOMP> 
 Euro government debt indices <0#GOVTOP> 
 Euro corporate bonds indices <CORPTOP> 
 World yield index <YLDS1> 
 Bunds (Eurex) <0#FGBL:> 
 
 SPEED GUIDES 
 European debt - links to news and prices <EUR/DEBT> 
 European debt by country <EUROPE/DEBT> 
 Euro <EURO> 
 Economic Indicators <EUROLAND01> 
 G7 Economic Indicator forecasts <G7DIARY2> 
 Currency & interest rate swaps <SWAP/1> 
  

Forward Calendar - U.S. corporate bond new issues

Reuters: [2008-05-14 15:24:00]

    May 14 (Reuters) - The following are lists of upcoming high-grade and 
high-yield corporate bond offerings in the United States. The information was 
gathered from IGM CorporateWatch, and other market sources: 
 
*Denotes 144a private placement debt offering. 
 
HIGH-GRADE BOND SALES EXPECTED FOR WEEK OF 5/12/2008                          
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
ACE INA Holdings  $450 mln     7-yr      A3/A-/A        CITI/JPM/WB       5/12 
*AIG              $4.0 bln    60-yr      Aa3/A/A+       CITI/JPM          5/13 
BJ Services       $250 mln    10-yr      Baa1/BBB+/NA   CITI/ML               
Canadian Pac Rail $TBA         5-yr      Baa3/BBB/NA    MS/RBC                
Canadian Pac Rail $TBA        10-yr      Baa3/BBB/NA    MS/RBC                
Centerpoint Engy  $300 mln    10-yr      Baa3/BBB/BBB   BARC/CS/LEH       5/12 
*Entergy Gulf     $375 mln    10-yr      Baa3/BBB+/BBB  MS/RBS/MIZ        5/12 
Parker-Hannifin   $450 mln    10-yr      BAS/GS/MS                        5/13 
Parker-Hannifin   $325 mln    20-yr      BAS/GS/MS                        5/13 
Petro Canada      $600 mln    10-yr      Baa2/BBB/NA    CITI/DB/HSBC      5/12 
Petro Canada      $900 mln    30-yr      Baa2/BBB/NA    CITI/DB/HSBC      5/12 
Philip Morris     $2.0 bln     5-yr      A2/A/A+        CS/DB/LEH         5/13 
Philip Morris     $2.5 bln    10-yr      A2/A/A+        CS/DB/LEH         5/13 
Philip Morris     $1.5 bln    30-yr      A2/A/A+        CS/DB/LEH         4/13 
Simon Property    $700 mln     5-yr      A3/A-/A-       BAS/CITI/DB/GS    5/12 
Simon Property    $800 mln    10-yr      A3/A-/A-       BAS/CITI/DB/GS    5/12 
Sovereign Bank    $500 mln    10-yr      Baa1/BBB/BBB-  LEH               5/13 
Tampa Electric    $150 mln    10-yr      Baa2/BBB-/BBB+ BNP/MS            5/13 
United Tech.      $1.0 bln    30-yr      a2/a/a+        BAS/CITI          5/13 
Wells Fargo Cap   $2.5 bln    perpetuals Aa3/AA-/NA     JPM/ML/MS/UBS     5/12 
------------------------------------------------------------------------------ 
SPLIT-RATED BOND SALES EXPECTED FOR WEEK OF 5/12/2008                         
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
------------------------------------------------------------------------------ 
CONVERTIBLE BOND SALES EXPECTED FOR WEEK OF 5/12/2008                         
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
 
------------------------------------------------------------------------------ 
HIGH-YIELD BOND SALES EXPECTED FOR WEEK OF 5/12/2008                         
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
------------------------------------------------------------------------------ 
UPCOMING DEALS                                                                
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
------------------------------------------------------------------------------ 
PREVIOUS HIGH-GRADE BOND SALES                                                
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
Alabama Power     $300 mln    30-yr      A2/A/A+        CITI/LEH           5/8 
AT&T              $750 mln     5-yr      A2/A/A         BAS/DB/MS/UBS      5/8 
AT&T              $1.0 bln    10-yr      A2/A/A         BAS/DB/MS/UBS      5/8 
AT&T              $1.25 bln   30-yr      A2/A/A         BAS/DB/MS/UBS      5/8 
Bank of America   $1.0 bln     2-yr frn  Aaa/AA+/NA     BAS                5/5 
Bank of America   $1.7 bln     2-yr frn  Aaa/AA+/NA     BAS                5/5 
Berkshire Hath    $1.0 bln     5-yr      Aaa/AAA/AAA    GS                 5/6 
Berkshire Hath    $1.0 bln    10-yr      Aaa/AAA/AAA    GS                 5/6 
Citigroup         $3.0 bln    10-yr      Aa3/AA-/AA-    CITI               5/5 
Citigroup         $550 mln    10-yr frn  Aa3/AA-/AA-    CITI               5/6 
Citigroup         $2.0 bln    perpetuals A2/A/A+        CITI               5/6 
Coca-Cola Ent.    $275 mln     3-yr frn  A3/A/A         DB/JPM             5/7 
Colgate-Palmolive $250 mln     5-yr      Aa3/AA-/AA-    GS/CITI/MS         5/7 
ConocoPhillips    $400 mln     5-yr      A1/A/A         CITI/RBSGC         5/5 
ConocoPhillips    $500 mln    10-yr      A1/A/A         CITI/RBSGC         5/5 
ConocoPhillips    $600 mln    30-yr      A1/A/A         CITI/RBSGC         5/5 
Duke Realty       $325 mln     5-yr      Baa1/BBB+/BBB  WB                 5/5 
GlaxoSmithKline   $1.0 bln     2-yr frn  A1/A+/AA-      CITI/JPM/LEH       5/6 
GlaxoSmithKline   $2.5 bln     5-yr      A1/A+/AA-      CITI/JPM/LEH       5/6 
GlaxoSmithKline   $2.75 bln   10-yr      A1/A+/AA-      CITI/JPM/LEH       5/6 
GlaxoSmithKline   $2.75 bln   30-yr      A1/A+/AA-      CITI/JPM/LEH       5/6 
*Grupo Televisa   $500 mln    10-yr      Baa1/BBB+/BBB+ HSBC/JPM           5/6 
*GTL Trade Fin    $500 mln    10-yr      NR/BBB-/BBB-   ABN/HSBC/JPM       5/9 
Hartford Fin Svs  $500 mln  10.5-yr      A2/A/A+        DB/GS/ML           5/7 
Keycorp           $750 mln     5-yr      A2/A-/A        CITI/CS/KEY/UBS    5/7 
Korea Railrod     $300 mln     5-yr      A2/A/NA        CITI/HSBC/MS       5/8 
Merrill Lynch     $1.75 bln   30-yr      A2/A/A         ML                 5/7 
Merrill Lynch     $1.2 bln     2-yr frn  A1/A+/A        ML                 5/7 
Morgan Stanley    $2.0 bln     2-yr frn  Aa3/AA-/AA-    MS                 5/9 
Morgan Stanley    $2.0 bln     7-yr      Aa3/AA-/AA-    MS                 5/9 
JP Mgn Chase Cap  $1.6 bln    70-yr      Aa3/A/A+       JPM                5/7 
Regions Bank      $400 mln    10-yr      A2/A/A         GS/JPM/LEH/ML      5/9 
*SMFG Pref Cap    $1.8 bln    perpetuals A2/BBB+/NA     DAIWA/GS/JPM/UBS   5/7 
Transalta Corp    $500 mln    10-yr      Baa2/BBB/NA    CITI/HSBC          5/6 
Travelers         $500 mln    10-yr      A3/A-/A        CITI/LEH           5/8 
------------------------------------------------------------------------------ 
PREVIOUS SPLIT-RATED BOND SALES                                               
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
PS of New Mexico  $350 mln    10-yr      Baa3/BB+/NA    LEH/ML             5/8 
------------------------------------------------------------------------------ 
PREVIOUS HIGH-YIELD BOND SALES                                                
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
*Atlas Energy     $150 mln    10-yr      B3/B/NA        JPM/WACH           5/6 
*DIRECTV Hldgs/LLC$1.35 bln    8-yr      Ba3/BB/NA      JPM/BAS/CS         5/7 
*Newfield Explor  $600 mln    10-yr      Ba3/BB-/NA     JPM/MS             5/5 
------------------------------------------------------------------------------ 
PREVIOUS CONVERTIBLE SECURITIES SALES                                         
COMPANY           AMT         MAT/DEBT   RTGS           MGRS            PRICED 
------------------------------------------------------------------------------ 
DEALS RECENTLY POSTPONED 
COMPANY           AMT         MAT/DEBT   RTGS           MGRS    DATE POSTPONED 
Bunge Ltd Fin     $TBA         5-yr     Baa2/BBB-/BBB  BNP/HSBC/JPM/RBSGC 3/12 
Bunge Ltd Fin     $TBA        10-yr     Baa2/BBB-/BBB  BNP/HSBC/JPM/RBSGC 3/12 
------------------------------------------------------------------------------ 
MANAGERS:                          SYNDICATE DESK NUMBERS: 
                                   GENERAL       HIGH-YIELD    HIGH-GRADE 
ABN -  ABN Amro Securities Inc                   212-409-7563  212-409-7563 
BAS -  Banc of America Securities                212-583-8352  212-933-3433 
BOCM - Banc One Capital Markets    312-732-7885  312-336-2525 
BARC - Barclays Capital                          212-412-2626  212-412-6730 
BEAR - Bear Stearns & Co                         212-272-5007  212-272-5371 
BNP  - BNP Paribas                               212-841-3658  212-841-3658 
CITI - Citigroup Global Markets                  212-723-6001  212-723-6121 
CS -   Credit Suisse                             212-325-3290  212.325-3325 
DBS  - Deutsche Bank Securities Inc              312-336-2525  312-732-1476 
GS   - Goldman Sachs & Co                        212-902-8204  212-902-5954 
JPM  - J.P. Morgan Chase & Co                    212-270-1100  212-834-4533 
KBW  - Keefe Bruyette & Woods      212-887-7777                            
LEH  - Lehman Brothers Inc                       212-526-9664  212-526-9664 
ML   - Merrill Lynch & Co                        212-449-6762  212-449-4949 
MS   - Morgan Stanley                            212-761-1286  212-761-1957 
UBS  - UBS Investment Bank                       203-719-1556  203-719-1088 
WACH - Wachovia Securities                       704-383-1928  704-383-7727 
    ((U.S. Financial Desk 646-223-6330)) 
Keywords: MARKETS CORPORATEBONDS CALENDAR 
    
Next: EURO GOVT-Bunds pare losses after U.S. CPI data
<s:event b:on="construct"> <s:script> htmlContent = document.getElementById('HtmlContent'); htmlContent.style.display='none'; </s:script> <s:task b:action="show" /> </s:event> <s:execute> <s:task b:action="js" b:value="GetInstrument('Start')" /> </s:execute> <div style="display:none;" xmlns="http://www.w3.org/1999/xhtml" xmlns:b="http://www.backbase.com/b" xmlns:s="http://www.backbase.com/s" xmlns:trad="http://www.TradingNews.com/trad" > <s:variable b:name="LOC_SearchLabel" b:select="'Recherche'" b:scope="global" /> <s:variable b:name="LOC_MenuMiminize" b:select="'Minimize/Restore'" b:scope="global" /> <s:variable b:name="LOC_MenuClose" b:select="'Fermé'" b:scope="global" /> <s:variable b:name="TRAD_MAX_TAB_COUNT" b:select="'5'" b:scope="global" /> <s:variable b:name="TRAD_MAX_COL_COUNT" b:select="'15'" b:scope="global" /> <s:variable b:name="TRAD_MAX_WIN_COUNT" b:select="'60'" b:scope="global" /> <s:variable b:name="TRAD_MAX_COL_WIDTH" b:select="'2'" b:scope="global" /> <s:variable b:name="TRAD_COL_WIDTH" b:select="'192'" b:scope="global" /> <s:variable b:name="TRAD_COL_MARGIN" b:select="'2'" b:scope="global" /> <s:variable b:name="TRAD_REFRESH_RATE" b:select="'5000'" b:scope="global" /> <s:variable b:name="TRAD_QUOTE_TYPE" b:select="'100'" b:scope="global" /> <s:variable b:name="TRAD_QUOTE_LIST" b:select="'101'" b:scope="global" /> <s:variable b:name="TRAD_INDEX_LIST_TYPE" b:select="'102'" b:scope="global" /> <s:variable b:name="TRAD_CHART_TYPE" b:select="'300'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTRA" b:select="'310'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_5J" b:select="'301'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_3M" b:select="'302'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_12M" b:select="'304'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_HEADLINE_TYPE" b:select="'400'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_BODY_TYPE" b:select="'401'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_DEFAULT_PARAM" b:select="'DIV+IPO+OR+STX+OR+MRG+OR+RES+OR+FRX+OR'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_DEFAULT_NAME" b:select="'NEWS'" b:scope="global" /> <s:variable b:name="TRAD_ANALYSE_HEADLINE_TYPE" b:select="'299'" b:scope="global" /> <s:variable b:name="TRAD_FOREX_TYPE" b:select="'500'" b:scope="global" /> <s:variable b:name="TRAD_DUMMY_TARGET" b:scope="global" /> <s:behavior b:name="trad-inst-list-behavior" > <!-- <s:event b:on="receive"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> --> </s:behavior> <s:behavior b:name="search-item-behavior"> <s:event b:on="mouseenter"> <s:setstyle b:background-color="#cccccc" /> <s:variable b:name="searchlistfocus" b:scope="global" b:select="1" /> </s:event> <s:event b:on="mouseleave"> <s:setstyle b:background-color="#eeeeee" /> <s:variable b:name="searchlistfocus" b:scope="global" b:select="0" /> </s:event> <s:event b:on="click"> <s:task b:action="set" b:target="//input[@name='query']/@value" b:value="{@b:instrument}" /> <s:task b:action="trigger" b:event="command" b:target="//trad:search-button" b:usebeahvior="trad-search-button" /> </s:event> </s:behavior> <s:behavior b:name="trad-inst-item-behavior" > <s:event b:on="click"> <s:if b:test="count(//b:deck/div[@b:state='selected']//trad:window) &lt; $TRAD_MAX_WIN_COUNT" > <s:variable b:name="CURR_INST" b:select="@b:instrument" b:test="exists(@b:instrument)" /> <s:variable b:name="CURR_INST" b:select="./text()" b:test="not(exists(@b:instrument))" /> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CURR_INST]))" > <s:render b:destination="id('trad-deck')/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{$CURR_INST}" name="{$CURR_INST}" trad:MainType = "{@type}"/> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CURR_INST]" /> </s:otherwise> </s:choose> </s:if> <s:task b:action="trigger" b:event="do-close" b:target="//trad:popup-window" /> </s:event> </s:behavior> <s:behavior b:name="trad-inst-news-behavior" > <s:event b:on="pourRien"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> </s:behavior> <s:behavior b:name="trad-inst-chart-behavior" > <s:event b:on="pourRien"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> </s:behavior> <s:behavior b:name="trad-analyse-item-behavior" > <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:behavior b:name="trad-news-behavior" > <s:event b:on="click"> <s:task b:action="load" b:destination="id('BxmlContent')" b:mode="replacechildren" b:url="{concat('/tnapp/newsServer.php?Path=', ./@trad:path)}" b:data="{current-time()}" /> </s:event> </s:behavior> <s:behavior b:name="trad-news-headline-behavior" > <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:popup-background"> <div class="trad-popup-background" id="popup-background" /> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-window" b:behavior="trad-popup-window"> <div class="trad-popup-window"> <div class="trad-WindowInner"><s:innercontent /></div> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-WindowTitle" b:behavior="trad-popup-WindowTitle"> <div class="trad-WindowTitle"><s:innercontent /></div> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-windowbody"> <div class="trad-popup-windowbody"><s:innercontent /></div> </s:htmlstructure> <s:behavior b:name="trad-popup-window"> <s:event b:on="construct"> <s:lock b:target="/*"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-background /> </s:render> <s:render b:destination="." b:mode="asfirstchild"> <trad:popup-WindowTitle /> </s:render> </s:lock> <s:task b:action="msg" b:value="{concat('pop-up', max(($bpc_windowHeight - 154, 610)), ':', max(($bpc_windowWidth - 20, 780)))}" /> <s:task b:action="settext" b:target="trad:popup-WindowTitle" b:value="{@trad:title}" /> <s:task b:action="set" b:target="id('WorkingArea')/trad:popup-background/style::height" b:value="{concat(max(($bpc_windowHeight - 154, 610)), 'px')}" /> <s:task b:action="set" b:target="id('WorkingArea')/trad:popup-background/style::width" b:value="{concat(max(($bpc_windowWidth - 20, 780)), 'px')}" /> </s:event> <s:event b:on="close" b:action="trigger" b:event="do-close" /> <!-- "method" for actually closing the window --> <s:event b:on="do-close"> <s:task b:action="remove" b:target="id('WorkingArea')/trad:popup-background" /> <s:task b:action="remove" b:target="." /> </s:event> </s:behavior> <s:behavior b:name="trad-popup-WindowTitle"> <s:initatt b:textselect="false" /> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinIcon /> <trad:WinClose /> </s:render> <s:task b:action="addclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> <!-- Enlevé pour Marketing : <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> --> </s:behavior> <s:htmlstructure b:name="trad:tab-header" b:behavior="trad-tab-header-behavior"> <ul class="trad-tab-header"> <s:innercontent /> </ul> </s:htmlstructure> <s:behavior b:name="trad-tab-header-behavior"> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <trad:tab-action /> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-tab-action-behavior"> <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab-action" b:behavior="trad-tab-action-behavior"> <li class="trad-tab trad-tab-action"> Create Tab </li> </s:htmlstructure> <s:behavior b:name="trad-tab-behavior"> <s:initatt trad:serverTab = "0" /> <s:event b:on="command"> <s:task b:action="select" b:target="{@b:followstate}"/> </s:event> <s:state b:on="deselect" b:normal="trad-tab" b:hover="trad-tab trad-tab-hov"/> <s:state b:on="select" b:normal="trad-tab trad-tab-sel" b:hover="trad-tab trad-tab-sel-hov"/> <s:event b:on="construct" > <s:lock > <s:render b:destination="." b:mode="aslastchild" > <trad:tab-edit-button /> <trad:tab-del-button /> </s:render> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateTab&amp;NewPos=', ./text(), ';', count(preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" b:test="@trad:serverTab = '0'"/> </s:lock> </s:event> <s:event b:on="edit"> <s:script> <!-- new_name = prompt("New tab name :"); if((new_name != ' ') && (new_name != null)) { bpc.task(['b:action', 'settext', 'b:value', new_name], _current); } --> </s:script> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RenameTab&amp;NewPos=', ./text(), ';', count(preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET"/> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab" b:behavior="trad-tab-behavior"> <li> <span> <s:innercontent /> </span> </li> </s:htmlstructure> <s:behavior b:name="trad-tab-del-button"> <s:initatt b:tooltiptext="Delete" /> <s:event b:on="command"> <s:if b:test="count(../../trad:tab) > 1" > <s:variable b:name="TheDivId" b:select="concat('Tab-', ../@b:tabId)" /> <s:for-each b:target="id('trad-deck')/div[@id=$TheDivId]/trad:column" > <s:task b:action="trigger" b:event="do-column-delete" b:target="$_target" /> </s:for-each> <s:task b:action="remove" b:target="id('trad-deck')/div[@id=$TheDivId]" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveTab&amp;NewPos=', count(../preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> <s:task b:action="select" b:target="id('trad-deck')/div[1]" /> <s:task b:action="remove" b:target=".." /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-tab-edit-button" > <s:initatt b:tooltiptext="Edit Name" /> <s:event b:on="command"> <s:task b:action="trigger" b:event="edit" b:target=".." /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab-del-button" b:behavior="trad-tab-del-button" > <div class="trad-tab-del-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:tab-edit-button" b:behavior="trad-tab-edit-button" > <div class="trad-tab-edit-button" /> </s:htmlstructure> <!-- Uses inline style with display:none to fix rendering bugs in IE 5.5 / 6.0 --> <s:htmlstructure b:name="trad:contextmenu" b:behavior="trad-contextmenu"> <div class="trad-contextmenu" style="display:none;"> <table cellpadding="0" cellspacing="0" border="0"> <tbody> <s:innercontent /> </tbody> </table> </div> </s:htmlstructure> <s:behavior b:name="trad-contextmenu"> <s:initatt b:focusgroup="true" b:focusitem="true" b:textselect="false" /> <s:event b:on="select"> <s:if b:test="not(@b:constructed = 'true')"> <s:setatt b:constructed="true" /> <s:script><!-- document.body.appendChild(_current); --></s:script> <s:task b:action="trigger" b:event="dynamic-construct" b:target="trad:contextmenurow" /> </s:if> <s:task b:test="not(name(..) = 'trad:contextmenurow')" b:action="position" b:type="place" b:position="at-pointer" b:target="." /> <s:task b:action="show" /> <s:task b:test="not(name(..) = 'trad:contextmenurow')" b:action="focus" /> </s:event> <s:event b:on="command" b:action="deselect" /> <s:event b:on="deselect" b:action="hide" /> <s:event b:on="inactive" b:test="not(parent::trad:contextmenurow)" b:action="deselect" /> </s:behavior> <!-- trad:CONTEXTMENUROW --> <!-- default expandable contextmenurow --> <s:htmlstructure b:name="trad:contextmenurow" b:behavior="trad-contextmenurow"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label-expand" colspan="2"><s:value-of b:select="{@b:label}" /></td> <td class="trad-contextmenu-expand"><s:innercontent /></td> </tr> </s:htmlstructure> <!-- none-expandable row without shortcut --> <s:htmlstructure b:name="trad:contextmenurow2"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label-expand" colspan="2"><s:value-of b:select="{@b:label}" /></td> <td></td> </tr> </s:htmlstructure> <!-- none-expandable row with shortcut --> <s:htmlstructure b:name="trad:contextmenurow3"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label"><s:value-of b:select="{@b:label}" /></td> <td class="trad-contextmenu-shortcut"><s:value-of b:select="{@b:shortcut}" /></td> <td></td> </tr> </s:htmlstructure> <s:behavior b:name="trad-contextmenurow"> <s:initatt b:focusitem="true" /> <s:state b:on="deselect" b:normal="trad-contextmenurow" b:disabled="trad-contextmenurow-disabled" /> <s:event b:on="dynamic-construct" b:test="not(@b:constructed='true')"> <!-- set attribute to make sure this is only executed once --> <s:setatt b:constructed="true" /> <s:choose> <s:when b:test="not(trad:contextmenu) and not(@b:shortcut)"> <s:task b:action="setstruct" b:value="trad:contextmenurow2" /> <s:task b:test="@b:disabled='true'" b:action="set" b:target="@class" b:value="trad-contextmenurow-disabled" /> </s:when> <s:when b:test="not(trad:contextmenu) and @b:shortcut"> <s:task b:action="setstruct" b:value="trad:contextmenurow3" /> <s:task b:test="@b:disabled='true'" b:action="set" b:target="@class" b:value="trad-contextmenurow-disabled" /> </s:when> <s:otherwise/> </s:choose> <s:task b:test="@b:icon" b:action="set" b:target="html()/td[1]/style::background-image" b:value="{concat('url(', @b:icon, ')')}" /> </s:event> <s:event b:on="command" b:test="not(b:contextmenu)" b:bubble="false" b:action="trigger" b:event="command" b:target="ancestor::trad:contextmenu"/> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="trigger" b:event="keyright" /> </s:event> <s:event b:on="keyright"> <s:if b:test="trad:contextmenu[@b:state='deselected']"> <s:task b:action="select" b:target="trad:contextmenu" /> <s:task b:action="position" b:type="place" b:target="trad:contextmenu" b:destination="." b:position="end-before" /> </s:if> <s:task b:action="select" /> </s:event> <s:event b:on="keyup-keydown"> <s:task b:test="not(trad:contextmenu)" b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="select" /> </s:event> <s:event b:on="select" b:action="focus" /> <s:event b:on="mouseleave" b:test="not(trad:contextmenu)" b:action="removeclass" b:value="trad-contextmenurow-hov" /> <s:event b:on="inactive"> <s:task b:action="removeclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="deselect" b:target=". | trad:contextmenu" /> </s:event> <s:event b:on="active" b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:event b:on="keyright"> <s:if b:test="trad:contextmenu[@b:state='deselected']"> <s:task b:action="select" b:target="trad:contextmenu" /> <s:task b:action="position" b:type="place" b:target="trad:contextmenu" b:destination="." b:position="end-before" /> </s:if> <s:task b:action="select" /> </s:event> </s:behavior> <!-- Icon context menu --> <trad:contextmenu id="trad-win-menu" > <trad:contextmenurow b:label="Close" b:on="command" b:action="trigger" b:event="do-close" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Quote" b:on="command" b:action="trigger" b:event="do-hide-show-quote" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Components" b:on="command" b:action="trigger" b:event="do-hide-show-list" b:target="id(id('trad-win-menu')/@ActualWin)" /> <!--<trad:contextmenurow b:label="Hide/Show Chart" b:on="command" b:action="trigger" b:event="do-hide-show-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> --> <trad:contextmenurow b:label="Chart" > <trad:contextmenu id="trad-chart-menu" > <trad:contextmenurow b:label="Intraday" b:on="command" b:action="trigger" b:event="do-show-intraday-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 1 Month" b:on="command" b:action="trigger" b:event="do-show-1month-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 3 Months" b:on="command" b:action="trigger" b:event="do-show-3months-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 12 Months" b:on="command" b:action="trigger" b:event="do-show-12months-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide Chart" b:on="command" b:action="trigger" b:event="do-hide-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> </trad:contextmenu> </trad:contextmenurow> <trad:contextmenurow b:label="Hide/Show News" b:on="command" b:action="trigger" b:event="do-hide-show-news" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Analyses" b:on="command" b:action="trigger" b:event="do-hide-show-analyse" b:target="id(id('trad-win-menu')/@ActualWin)" /> </trad:contextmenu> <style type="text/css" b:browser="moz"> /* Using nowrap in IE will cause problems */ .b-windowhead-mid { white-space: nowrap; } </style> <s:behavior b:name="trad-win-drag"> <s:event b:on="drag-enter"> <s:lock b:target="."> <s:task b:action="assign" b:target="$TRAD_Last_Win_Enter" b:select="@id" b:test="parent::trad:column" /> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="before" b:test="parent::trad:column and @id != 'TradWinDragDest'" /> </s:lock> </s:event> </s:behavior> <!-- TRAD:WINDOW --> <s:htmlstructure b:name="trad:window" b:behavior="trad-window"> <div class="trad-WindowContainer"> <div class="trad-WindowInner"> <s:innercontent/> </div> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WindowTitle" b:behavior="trad-WindowTitle"> <div class="trad-WindowTitle"> <s:innercontent/> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinNewsIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftNewsIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinAnalyseIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftAnalyseIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinEvolution"> <div class="trad-WinEvolution evolutionStay"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinMenu" b:behavior="trad-WinMenu"> <div class="trad-WinMenu"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinClose" b:behavior="trad-WinClose"> <div class="trad-WinClose" b:behavior="trad-WinClose"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WindowContent" b:behavior="trad-WindowContent"> <div class="trad-WindowContent"> <s:innercontent/> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:QuoteData" b:behavior="trad-QuoteData"> <td class="trad-QuoteData"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphLargePos" b:behavior="trad-GraphPosition"> <td class="trad-GraphData hiddenCell"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphSmallPos" b:behavior="trad-GraphPosition"> <td class="trad-GraphData hiddenCell"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:ListData" b:behavior="trad-ListData"> <td class="trad-ListData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:NewsData" b:behavior="trad-NewsData"> <td class="trad-NewsData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:AnalyseData" b:behavior="trad-AnalyseData"> <td class="trad-AnalyseData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphData" b:behavior="trad-GraphData" > <div> <s:innercontent /> </div> </s:htmlstructure> <s:behavior b:name="trad-window" b:behavior="trad-win-drag"> <s:initatt b:draggroup="trad-window" b:dragmode="symbol" b:focusgroup="true" b:focusitem="true" b:maximized="true" trad:showQuote = "1" trad:showChart = "0" trad:showList = "0" trad:showNews = "0" trad:showAnalyse = "0" trad:hasQuote = "1" trad:hasChart = "1" trad:hasList = "0" trad:hasNews = "1" trad:hasAnalyse = "1" trad:chartType = "300" trad:MainType = "100" trad:initDone = "0" trad:serverWin = "0" /> <s:event b:on="construct"> <s:lock b:target="/*" > <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateWindow&amp;NewPos=', @name, ';', @trad:showQuote, ';', @trad:showChart, ';', @trad:showList, ';', @trad:showNews, ';', @trad:showAnalyse, ';', @trad:hasQuote, ';', @trad:hasChart, ';', @trad:hasList, ';', @trad:hasNews, ';', @trad:hasAnalyse, ';', @trad:MainType, ';',count(preceding-sibling::trad:window) + 1, ';', count(../preceding-sibling::trad:column) + 1, ';', count(../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="id('NewData')" b:test="@trad:serverWin = '0'" /> <s:render b:destination="." b:mode="aslastchild" > <trad:WindowTitle /> <trad:WindowContent /> </s:render> <s:task b:action="settext" b:target="trad:WindowTitle" b:value="{@name}" /> <s:task b:action="set" b:target="@trad:initDone" b:value="1" /> <s:task b:action="set" b:target="@trad:serverWin" b:value="0" /> </s:lock> </s:event> <s:event b:on="drag-start"> <s:task b:action="trigger" b:event="mouseleave" b:target="trad:WindowTitle" /> <s:variable b:name="CurrentIndex" b:select="count(preceding-sibling::trad:window)" /> <s:variable b:name="ActualParent" b:select=".." /> <s:variable b:name="CurrentHeight" b:select="getElementHeight(.)" /> <s:task b:action="set" b:target="./style::width" b:value="{concat(getElementWidth(.), 'px')}" /> <s:task b:action="move" b:source="." b:destination="$bpc_dragSymbol" /> <s:task b:action="set" b:target="$bpc_dragSymbol/style::z-index" b:value="15" /> <s:render b:destination="$ActualParent/trad:window[$CurrentIndex]" b:mode="after" b:test="$CurrentIndex != 0"> <div id="TradWinDragDest" b:behavior="trad-win-drag"> </div> </s:render> <s:render b:destination="$ActualParent" b:mode="aslastchild" b:test="$CurrentIndex = 0"> <div id="TradWinDragDest" b:behavior="trad-win-drag"> </div> </s:render> <s:task b:action="set" b:target="id('TradWinDragDest')/style::height" b:value="{concat($CurrentHeight, 'px')}" /> <s:variable b:name="TRAD_Last_Win_Enter" b:scope="global" b:select="''" /> </s:event> <s:event b:on="drag-drop"> <s:task b:action="set" b:target="trad:WindowTitle/@b:drag" b:value="trad-window" /> <s:task b:action="set" b:target="./style::width" b:value="100%" /> <s:task b:action="trigger" b:event="mouseleave" b:target="trad:WindowTitle" /> <s:task b:action="trigger" b:event="resize" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=MoveWindow&amp;NewPos=', @name, ';', count(preceding-sibling::trad:window) + 1, ';', count(../preceding-sibling::trad:column) + 1, ';', count(../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:event> <s:event b:on="close" b:action="trigger" b:event="do-close" /> <!-- "method" for actually closing the window --> <s:event b:on="do-close"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_QUOTE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showQuote = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_INDEX_LIST_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showList = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', @trad:chartType, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showChart = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_NEWS_HEADLINE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showNews = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_ANALYSE_HEADLINE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showAnalyse = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveWindow&amp;NewPos=', @id)}" b:data="{current-time()}" b:target="$TRAD_DUMMY_TARGET" /> <s:task b:action="remove" b:target="." /> </s:event> <s:event b:on="do-hide-show-list"> <s:task b:action="trigger" b:event="trad-ShowHide" b:target="descendant::trad:ListData" b:test="@trad:hasList='1'" /> </s:event> <s:event b:on="do-show-intraday-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="310" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-1month-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="301" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-3months-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="302" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-12months-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="304" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-hide-chart"> <s:if b:test="@trad:hasChart='1'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> </s:event> <s:event b:on="do-show-chart"> <s:if b:test="@trad:hasChart='1'" > <s:task b:action="trigger" b:event="trad-Show" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Show" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> </s:event> <s:event b:on="do-hide-show-news"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> <s:event b:on="do-hide-show-quote"> <s:task b:action="trigger" b:event="trad-ShowHide" b:target="descendant::trad:QuoteData" b:test="@trad:hasQuote='1'"/> </s:event> <s:event b:on="do-hide-show-analyse"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> <s:event b:on="resize"> <s:if b:test="@trad:showChart = '0'"> <s:choose> <s:when b:test="ancestor::trad:column/@b:ColWidth gt 1"> <s:if b:test="exists(descendant::trad:GraphSmallPos/trad:GraphData)" > <s:task b:action="removeclass" b:value="hiddenCell" b:target="descendant::trad:GraphLargePos" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="trad:WindowContent/html()/table/thead/tr/td[2]" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="descendant::trad:GraphSmallPos" /> <s:task b:action="move" b:source="descendant::trad:GraphData" b:destination="descendant::trad:GraphLargePos" /> </s:if> </s:when> <s:otherwise> <s:if b:test="exists(descendant::trad:GraphLargePos/trad:GraphData)" > <s:task b:action="removeclass" b:value="hiddenCell" b:target="descendant::trad:GraphSmallPos" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="trad:WindowContent/html()/table/thead/tr/td[2]" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="descendant::trad:GraphLargePos" /> <s:task b:action="move" b:source="descendant::trad:GraphData" b:destination="descendant::trad:GraphSmallPos" /> </s:if> </s:otherwise> </s:choose> </s:if> </s:event> </s:behavior> <!-- Behaviors... --> <s:behavior b:name="trad-WindowTitle"> <s:initatt b:textselect="false" b:drag="trad-window" /> <s:event b:on="construct"> <s:choose> <s:when b:test="../@trad:MainType = '400'"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinNewsIcon /> </s:render> </s:when> <s:when b:test="../@trad:MainType = '299'"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinAnalyseIcon /> </s:render> </s:when> <s:otherwise> <s:render b:destination="." b:mode="aslastchild"> <trad:WinIcon /> </s:render> </s:otherwise> </s:choose> <s:render b:destination="." b:mode="aslastchild"> <trad:WinClose /> </s:render> <s:render b:destination="./trad:WinIcon" b:mode="after" b:test="../@trad:hasQuote = '1'" > <trad:WinEvolution /> <trad:WinMenu /> </s:render> </s:event> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="menuHover" b:target="trad:WinMenu" /> <s:task b:action="addclass" b:value="closeHover" b:target="trad:WinClose" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="menuHover" b:target="trad:WinMenu" /> <s:task b:action="removeclass" b:value="menuClick" b:target="trad:WinMenu" /> <s:task b:action="removeclass" b:value="closeHover" b:target="trad:WinClose" /> </s:event> </s:behavior> <s:behavior b:name="trad-WinIcon"> </s:behavior> <s:behavior b:name="trad-WinMenu"> <s:event b:on="click"> <s:task b:action="addclass" b:value="menuClick" /> <s:task b:action="select" b:target="id('trad-win-menu')" /> <s:task b:action="set" b:target="id('trad-win-menu')/@ActualWin" b:value="{ancestor::trad:window[1]/@id}" /> <s:task b:action="position" b:type="place" b:target="id('trad-win-menu')" b:destination="." b:position="at-pointer" /> </s:event> </s:behavior> <s:behavior b:name="trad-WinClose"> <s:event b:on="click"> <s:task b:action="trigger" b:event="do-close" b:target="../.." /> </s:event> </s:behavior> <s:behavior b:name="trad-WindowContent"> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <table class="trad-WindowTable"> <thead> <tr> <td class="trad-WinTableHeaderLeft"> </td> <td class="trad-WinTableHeaderRight hiddenCell"> </td> </tr> </thead> <tbody> <tr> <trad:QuoteData /> <trad:GraphLargePos /> </tr> <tr> <trad:GraphSmallPos /> </tr> <tr> <trad:ListData /> </tr> <tr> <trad:NewsData /> </tr> <tr> <trad:AnalyseData /> </tr> </tbody> </table> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-QuoteData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showQuote='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',ancestor::trad:window/@trad:MainType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'"/> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[1]" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showQuote" b:value="0" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <div id="{concat('quote_table_', ancestor::trad:window/@id)}" class="quote_table"> <img alt="Graphique" src="/tnapp/Styles/Img/loading.gif"/> </div> </s:render> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',ancestor::trad:window/@trad:MainType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[1]" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showQuote" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-GraphPosition"> <s:event b:on="construct"> <s:if b:test="ancestor::trad:window/@trad:showChart = 1"> <s:task b:action="trigger" b:event="trad-Show" b:test="(ancestor::trad:column/@b:ColWidth gt 1) and (name(.) = 'trad:GraphLargePos')"/> <s:task b:action="trigger" b:event="trad-Show" b:test="(ancestor::trad:column/@b:ColWidth = 1) and (name(.) = 'trad:GraphSmallPos')"/> </s:if> </s:event> <s:event b:on="trad-Show"> <s:render b:destination="." b:mode="aslastchild"> <trad:GraphData /> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[2]" b:test="ancestor::trad:column/@b:ColWidth gt 1" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showChart" b:value="0" /> </s:event> <s:event b:on="trad-Hide"> <s:task b:action="remove" b:target="trad:GraphData" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[2]" b:test="ancestor::trad:column/@b:ColWidth gt 1" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showChart" b:value="1" /> </s:event> </s:behavior> <s:behavior b:name="trad-GraphData"> <s:event b:on="construct"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',ancestor::trad:window/@trad:chartType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <div id="{concat('chart_table_', ancestor::trad:window/@id)}" class="chart_img"> <img alt="Graphique" id="{concat('chart_img_', ancestor::trad:window/@id)}" src="/tnapp/Styles/Img/loading.gif"/> </div> </s:render> </s:event> <s:event b:on="remove"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',ancestor::trad:window/@trad:chartType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> </s:event> </s:behavior> <s:behavior b:name="trad-ListData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showList='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_INDEX_LIST_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showList" b:value="0" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <table id="{concat('list_table_', ancestor::trad:window/@id)}" class="list_table"> <thead class="list_table_header" ><tr> <th b:cursor="pointer" b:action="sort">Name</th> <th b:cursor="pointer" b:action="sort">Last</th> <th b:cursor="pointer" b:action="sort">%</th> </tr></thead> <tbody id="{concat('table_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-list-behavior" > </tbody></table> </s:render> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_INDEX_LIST_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showList" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-NewsData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showNews='1'"> <s:choose> <s:when b:test="ancestor::trad:window/@name=$TRAD_NEWS_DEFAULT_NAME"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', $TRAD_NEWS_DEFAULT_NAME, '&amp;Param=',$TRAD_NEWS_DEFAULT_PARAM)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name, '&amp;Param=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> </s:otherwise> </s:choose> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <table id="{concat('news_table_', ancestor::trad:window/@id)}" class="news_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th> <th b:cursor="pointer" >News Header</th> </tr></thead> <tbody id="{concat('news_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showNews" b:value="0" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showNews" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-AnalyseData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showAnalyse='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_ANALYSE_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s.variable b:name="TickerCol" b:select="&gt;th b:cursor='pointer' b:action='sort'>Ticker&gt;/th>" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0' and ancestor::trad:window/@name='ANALYSES'"> <table id="{concat('analyse_table_', ancestor::trad:window/@id)}" class="analyse_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th><th></th> <th b:cursor="pointer" b:action="sort">Ticker</th> <th b:cursor="pointer" b:action="sort">Description</th> </tr></thead> <tbody id="{concat('analyse_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0' and ancestor::trad:window/@name!='ANALYSES'"> <table id="{concat('analyse_table_', ancestor::trad:window/@id)}" class="analyse_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th><th></th> <th b:cursor="pointer" b:action="sort">Description</th> </tr></thead> <tbody id="{concat('analyse_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showAnalyse" b:value="0" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_ANALYSE_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showAnalyse" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:htmlstructure b:name="trad:column" b:behavior="trad-column-behavior"> <div class="trad-column"> <s:innercontent /> </div> </s:htmlstructure> <s:behavior b:name="trad-column-behavior"> <s:initatt b:dragreceive="trad-window" b:ColWidth="1" trad:serverCol = "0" /> <s:event b:on="resize" > <s:task b:action="set" b:target="./style::left" b:value="{concat(sum(preceding-sibling::*/@b:ColWidth) * $TRAD_COL_WIDTH + (count(preceding-sibling::*) + 1) * $TRAD_COL_MARGIN, 'px')}" /> <s:task b:action="set" b:target="./style::width" b:value="{concat(@b:ColWidth * $TRAD_COL_WIDTH, 'px')}" /> <s:for-each b:target="./trad:window" > <s:task b:action="set" b:target="$_target/style::width" b:value="{concat((../@b:ColWidth * $TRAD_COL_WIDTH - 5), 'px')}" /> <s:task b:action="trigger" b:event="resize" b:target="$_target" b:usebehavior="trad-window" /> </s:for-each> <s:task b:action="trigger" b:event="resize" b:target="following-sibling::trad:column[1]" b:test="exists(following-sibling::trad:column)" /> </s:event> <s:event b:on="construct"> <s:render b:destination="." b:mode="asfirstchild"> <trad:column-header> <trad:column-insert /> <trad:column-delete /> <trad:column-enlarge /> <trad:column-reduce /> </trad:column-header> </s:render> <s:task b:action="set" b:target="./style::width" b:value="{concat(@b:ColWidth * $TRAD_COL_WIDTH, 'px')}" /> <s:task b:action="set" b:target="./style::left" b:value="{concat(sum(preceding-sibling::*/@b:ColWidth) * $TRAD_COL_WIDTH + (count(preceding-sibling::*) + 1) * $TRAD_COL_MARGIN, 'px')}" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateCol&amp;NewPos=', count(preceding-sibling::trad:column) + 1, ';', count(../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" b:test="@trad:serverCol = '0'"/> </s:event> <s:event b:on="do-column-delete"> <s:for-each b:target="trad:window" > <s:task b:action="trigger" b:event="do-close" b:target="$_target" /> </s:for-each> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveCol&amp;NewPos=', count(preceding-sibling::trad:column) + 1, ';', count(../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> <s:task b:action="set" b:target="@b:ColWidth" b:value="0" /> <s:task b:action="trigger" b:event="resize" b:target="../trad:column[1]" /> <s:task b:action="remove" b:target="." /> </s:event> <s:event b:on="drag-receive"> <s:task b:action="set" b:target="$_dragCurrent/style::width" b:value="{./style::width}" /> <s:task b:action="move" b:source="$_dragCurrent" b:destination="id('TradWinDragDest')" b:mode="replace" /> </s:event> <s:event b:on="drag-enter"> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="aslastchild" b:test="not(exists(./*[@id = $TRAD_Last_Win_Enter]))" /> </s:event> <s:event b:on="drag-reenter"> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="aslastchild" b:test="exists(./*[@id = $TRAD_Last_Win_Enter and position() = last()] ) and $TRAD_Last_Win_Enter != 'TradWinDragDest'" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:column-header" b:behavior="trad-column-header"><div class="trad-column-header" ><s:innercontent /></div></s:htmlstructure> <s:htmlstructure b:name="trad:column-enlarge" b:behavior="trad-column-enlarge"><span class="trad-column-button trad-column-enlarge"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-reduce" b:behavior="trad-column-reduce" ><span class="trad-column-button trad-column-reduce"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-delete" b:behavior="trad-column-delete" ><span class="trad-column-button trad-column-delete"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-insert" b:behavior="trad-column-insert" ><span class="trad-column-button trad-column-insert"></span></s:htmlstructure> <s:behavior b:name="trad-column-header"> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-hov" /> </s:behavior> <s:behavior b:name="trad-column-enlarge"> <s:initatt b:tooltiptext="Enlarge" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click" > <s:if b:test="sum(../../../trad:column/@b:ColWidth) &lt; $TRAD_MAX_COL_COUNT" > <s:if b:test="../../@b:ColWidth &lt; $TRAD_MAX_COL_WIDTH" > <s:task b:action="set" b:target="../../@b:ColWidth" b:value="{../../@b:ColWidth + 1}" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=ResizeCol&amp;NewPos=', ../../@b:ColWidth, ';', count(../../preceding-sibling::trad:column) + 1, ';', count(../../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:if> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-reduce"> <s:initatt b:tooltiptext="Reduce" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click" > <s:if b:test="../../@b:ColWidth > 1" > <s:task b:action="set" b:target="../../@b:ColWidth" b:value="{../../@b:ColWidth - 1}" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=ResizeCol&amp;NewPos=', ../../@b:ColWidth, ';', count(../../preceding-sibling::trad:column) + 1, ';', count(../../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-delete"> <s:initatt b:tooltiptext="Delete" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click"> <s:if b:test="count(../../../trad:column) > 1" > <s:task b:action="trigger" b:event="do-column-delete" b:target="../.." /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-insert"> <s:initatt b:tooltiptext="Insert" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click"> <s:if b:test="sum(../../../trad:column/@b:ColWidth) &lt; $TRAD_MAX_COL_COUNT" > <s:task b:action="render" b:destination="../.." b:mode="after" b:render="NewTradColumn" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> </s:if> </s:event> </s:behavior> <s:render b:name="NewTradColumn"> <trad:column /> </s:render> <!-- The trad:toolbar control is the place holder for: - Tab navigation - News window creation button - Analyse window creation button - Search box - Refresh button --> <s:htmlstructure b:name="trad:toolbar" b:behavior="trad-toolbar"> <div class="ToolBar"> <s:innercontent /> </div> </s:htmlstructure> <!-- New structure for search list --> <s:htmlstructure b:name="trad:search-list" b:behavior="trad-search-list" > <div class="trad-search-list" > <s:innercontent /> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:search-button" b:behavior="trad-search-button" > <span class="trad-search-button" > Search </span> </s:htmlstructure> <s:htmlstructure b:name="trad:news-button" b:behavior="trad-news-button"> <div class="trad-news-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:analysis-button" b:behavior="trad-analysis-button"> <div class="trad-analysis-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:refresh-button" b:behavior="trad-refresh-button"> <div class="trad-refresh-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:tradingnews-logo" b:behavior="trad-tradingnews-logo"> <div class="trad-tradingnews-logo" /> </s:htmlstructure> <s:htmlstructure b:name="trad:reuters-logo" b:behavior="trad-reuters-logo"> <div class="trad-reuters-logo" /> </s:htmlstructure> <s:htmlstructure b:name="trad:disclamer" b:behavior="trad-disclamer"> <div class="trad-disclamer" > Disclamer </div> </s:htmlstructure> <s:behavior b:name="search-box" > <s:event b:on="construct"> <s:variable b:name="searchlistfocus" b:scope="global" b:select="0" /> </s:event> <s:whenactive> <s:keys b:keys="enter" > <s:task b:action="trigger" b:event="command" b:target="../trad:search-button" b:usebeahvior="trad-search-button" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" /> </s:keys> </s:whenactive> <s:event b:on="keyup"> <s:task b:action="blur" /> <s:task b:action="focus" /> <s:task b:action="load" b:url="{concat('/tnapp/phpClass/loadSearchList.php?wordTry=',./@value)}" b:destination="id('search-list')" b:data="{current-time()}" b:test="./@value!=''" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" b:test="./@value=''" /> </s:event> <s:event b:on="blur"> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" b:test="$searchlistfocus='0'" /> </s:event> </s:behavior> <s:behavior b:name="trad-search-list"> <s:event b:on="receive"> <s:task b:action="msg" b:value="Recieve" /> <s:setstyle b:display="block" /> </s:event> <!-- New event for hidding div search list --> <s:event b:on="hide-search-list"> <s:setstyle b:display="none" /> </s:event> </s:behavior> <s:behavior b:name="trad-toolbar" > <s:event b:on="construct" > <s:render b:destination="." b:mode="aslastchild" > <div class="tool-bar-button"> <!-- <trad:disclamer /> --> <trad:news-button /> <trad:analysis-button /> <input class="trad-search-text" type="text" name="query" id="search-input" b:behavior="search-box" /> <trad:search-button /> <!-- <trad:refresh-button /> --> <trad:reuters-logo /> </div> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-search-button"> <s:event b:on="command"> <s:task b:action="blur" /> <s:variable b:name="CurrentId" b:select="upper-case(../input/@value)"/> <s:task b:action="trigger" b:event="add-window" /> <s:task b:action="set" b:target="//input[@name='query']/@value" b:value="" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" /> </s:event> <s:event b:on="add-window"> <s:if b:test="count(//b:deck/div[@b:state='selected']//trad:window) &lt; $TRAD_MAX_WIN_COUNT" > <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "601" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-news-button"> <s:initatt b:tooltiptext="Display News" /> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="command"> <s:variable b:name="CurrentId" b:select="$TRAD_NEWS_DEFAULT_NAME"/> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "400" trad:hasQuote = "0" trad:hasChart = "0" trad:hasNews = "1" trad:hasAnalyse = "0" trad:showQuote="0" trad:showNews="1" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-analysis-button"> <s:initatt b:tooltiptext="Display Analysis" /> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="command"> <s:variable b:name="CurrentId" b:select="'ANALYSES'"/> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "299" trad:hasQuote = "0" trad:hasChart = "0" trad:hasNews = "0" trad:hasAnalyse = "1" trad:showQuote="0" trad:showAnalyse="1" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-refresh-b