
    ~OiP                     @   d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZ d dlmZ d dlmZ  e            Z e
e          Z eddg	          Z ed
          Z eeddge          e                    d           ee          fdefd                        ZdS )    )	APIRouterRequestDepends)HTMLResponse)Jinja2Templates)
open_mysqlget_mysql_credsget_pingconf_vars)nav_context)add_dual_routez/readarticlereadarticle)prefixtags	templates)	directory GET)methodsresponse_classrequestc                   K   | j                             d          }d }g }d }	 t          t                    5 }|                    d          }|                    d|f           |                                 |                    d|f           |                                }|rdD ]H}t          |                    |          t                    r||         
                    d          ||<   I|                    d          rQ|d                                         }d	d l}	|	                    d
d|          }|	                    dd|          }||d<   |                    d|f           |                                }|D ]Q}
dD ]L}|
                    |          }t          |t                    r|
                    d          |
|<   E|d|
|<   MR	 d d d            n# 1 swxY w Y   |r|                                 n# |r|                                 w w xY wt                               d| ||d|          S )NArtNumT)
dictionaryz
                UPDATE Articles
                SET ViewCnt = IFNULL(ViewCnt, 0) + 1
                WHERE ArtNum = %s
            a  
                SELECT a.ArtNum, a.Title, a.Source, a.URL AS URL_Source, a.PubDate, a.Author, 
                    a.PostDate, a.ViewCnt, a.Article, c.CatName, h.Handle 
                FROM Articles a 
                JOIN Categories c ON a.CatNum = c.CatNum 
                JOIN Handles h ON a.HandleID = h.HandleID 
                WHERE a.ArtNum = %s AND a.Deleted = 0
            )TitleSource
URL_SourceAuthorArticleCatNameViewCntHandlezutf-8r   r   z ^(<p>\s*(<br\s*/?>)?\s*</p>\s*)+r   z (\s*<p>\s*(<br\s*/?>)?\s*</p>)+$ai  
                SELECT c.ComNum, c.ArtNum, h.Handle AS HandleStr,
                       c.ReplyToComNum, c.ReplyToHandleStr,
                       c.Comment, c.PostDate
                FROM Comments c
                JOIN Handles h ON c.HandleID = h.HandleID
                WHERE c.ArtNum = %s and c.ComNum > 0
                ORDER BY c.ComNum
            )	HandleStrReplyToHandleStrCommentzreadarticle.html)r   articlecomments)query_paramsgetr   mysql_credscursorexecutecommitfetchone
isinstancebytesdecodestripresubfetchallcloser   TemplateResponse)r   navart_numr%   r&   r*   connkeycleanedr2   cvalues               ./wd/v2025.freedom4um.com/routes/readarticle.pyread_articler?      s      "&&x00GGHF>$$ 9	$[[D[11F NN  	  
 KKMMM NN     oo''G 1q D DC!'++c"2"2E:: D'.s|':':7'C'C ;;y)) 1%i06688G III ff%H"gVVG ff%H"gVVG)0GI& NN     ((H  $ $G $ $CEE#JJE!%// $!&g!6!6#!##$$g9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$ 9	$x  	LLNNN  	LLNNNN	 %% 	
 	
 		
  s/   H FG$H $G((H +G(,H HN)fastapir   r   r   fastapi.responsesr   fastapi.templatingr   utils.pingdatar   r	   r
   	utils.navr   utils.routesr   PingConfr)   routerr   r(   r?        r>   <module>rJ      sE   / / / / / / / / / / * * * * * * . . . . . . I I I I I I I I I I ! ! ! ! ! ! ' ' ' ' ' 'oh''	.	?	?	?Ok222	UGLIIIN-4W[-A-A N N N N N  JIN N NrI   