Merged changes form stabel branch up to the current state (2.3.22+).
[fa-stable.git] / includes / ui / ui_controls.inc
index 7502aba4127b6a8901e3648772f3cce75c8770c6..e184277f6ce0d06ff01f3855c21ea43f79b067af 100644 (file)
@@ -32,10 +32,15 @@ function get_post($name, $dflt='')
                                ((!isset($_POST[$name]) || $_POST[$name] === '') ? $dflt : $_POST[$name]);
 }
 //---------------------------------------------------------------------------------
+$form_nested = -1;
 
 function start_form($multi=false, $dummy=false, $action="", $name="")
 {
        // $dummy - leaved for compatibility with 2.0 API
+       global $form_nested;
+
+       if (++$form_nested) return;
+
 
        if ($name != "")
                $name = "name='$name'";
@@ -53,7 +58,9 @@ function start_form($multi=false, $dummy=false, $action="", $name="")
 
 function end_form($breaks=0)
 {
-       global $Ajax;
+       global $Ajax, $form_nested;
+
+       if ($form_nested-- > 0) return;
 
        $_SESSION['csrf_token'] = hash('sha256', uniqid(mt_rand(), true));
        if ($breaks)
@@ -177,14 +184,14 @@ function hyperlink_back($center=true, $no_menu=true, $type_no=0, $trans_no=0, $f
        {
                include_once($path_to_root."/admin/db/attachments_db.inc");
                $id = has_attachment($type_no, $trans_no);
-       }
+               $attach = get_attachment_string($type_no, $trans_no);
+       echo $attach;   
+    }
        $width = ($id != 0 ? "30%" : "20%");    
        start_table(false, "width=$width");
        start_row();
        if ($no_menu)
        {
-               if ($id != 0)
-                       echo "<td align=center><a href='$path_to_root/admin/attachments.php?vw=$id' target='blanc_'>"._("View Attachment")."</a></td>\n";
                echo "<td align=center><a href='javascript:window.print();'>"._("Print")."</a></td>\n";
        }
        echo "<td align=center><a href='javascript:goBack(".($final ? '-2' : '').");'>".($no_menu ? _("Close") : _("Back"))."</a></td>\n";
@@ -472,7 +479,7 @@ function set_editor($type, $input, $caller=true)
 
        $Editors[$key] = array( $path_to_root . $popup_editors[$type][0], $input, 
                $popup_editors[$type][3], $popup_editors[$type][4]);
-       
+
        $help = 'F' . ($key - 111) . ' - ';
        $help .= $popup_editors[$type][2];
        $Pagehelp[] = $help;