สร้าง Popup progress bar - เขียน Extension phpbb3.1

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderators: mindphp, ผู้ดูแลกระดาน

Post Reply
thatsawan
PHP VIP Members
PHP VIP Members
Posts: 19321
Joined: 31/03/2014 10:02 am
Contact:

สร้าง Popup progress bar - เขียน Extension phpbb3.1

Post by thatsawan » 07/03/2015 12:13 am

2015-03-06_14-47-06.png
2015-03-06_14-47-06.png (46.82 KiB) Viewed 413 times

ใส่ script ในไฟล์ HTML

Code: Select all

   <script type="text/javascript">
   // <![CDATA[
      /**
      * Popup search progress bar
      */
      function popup_progress_bar(progress_type)
      {
         close_waitscreen = 0;
         // no scrollbars
         popup('{UA_PROGRESS_BAR}&amp;type=' + progress_type, 400, 240, '_index');
      }
   // ]]>
   </script>


ปุุ่มกด

Code: Select all

<input type="submit" name="submit" value="{L_AUTOGROPS}" onclick="popup_progress_bar('create');" class="button1" />


ไฟล์ php _module.php

Code: Select all

 $action = request_var('action', '');
                if ($action)
        {
            switch ($action)
            {
                case 'progress_bar':
                    $type = request_var('type', '');
                    $this->display_progress_bar($type);
                break;
                        }
                


ส่งค่า

Code: Select all

    $template->assign_vars(array(
                            'U_ACTION'              => $this->u_action,
                           // 'U_PROGRESS_BAR'        => append_sid("{$phpbb_admin_path}index.$phpEx", "i=$id&amp;mode=$mode&amp;action=progress_bar"),
                            'UA_PROGRESS_BAR'        => addslashes(append_sid("{$phpbb_admin_path}index.$phpEx", "i=$id&amp;mode=$mode&amp;action=progress_bar")),
                            )); 


ส่วนที่เเสดงใน popup

Code: Select all

function display_progress_bar($type)
    {
        global $template, $user;

        //$l_type = ($type == 'create') ? 'INDEXING_IN_PROGRESS' : 'DELETING_INDEX_IN_PROGRESS';
                $l_type = 'INDEXING_IN_PROGRESS';
        adm_page_header($user->lang[$l_type]);

        $template->set_filenames(array(
            'body'    => 'progress_bar.html')
        );

        $template->assign_vars(array(
            'L_PROGRESS'            => $user->lang[$l_type],
            'L_PROGRESS_EXPLAIN'    => $user->lang[$l_type . '_EXPLAIN'])
        );

        adm_page_footer();
    


ส่วนที่จะสั่งให้ ปิด popup เมื่อทำงานเสร็จ

Code: Select all

 trigger_error($user->lang['AUTOGROP_PROGRESS'] . adm_back_link($this->u_action) . $this->close_popup_js()); 


Code: Select all

 function close_popup_js()
    {
        return "<script type="text/javascript">\n" .
            "// <![CDATA[\n" .
            "    close_waitscreen = 1;\n" .
            "// ]]>\n" .
            "</script>\n";
    



ไฟล์ภาษาที่ใช้เเสดงใน popup

Code: Select all

        'INDEXING_IN_PROGRESS'   => 'อยู่ระหว่างการจัดกลุ่มอัตโนมัติ',
   'INDEXING_IN_PROGRESS_EXPLAIN'   => 'กำลังจัดกลุ่มอัตโนมัติสำหรับกลุ่มที่เลือก กระบวนการนี้อาจกินเวลานาน  ขึ้นอยู่กับขนาดเว็บบอร์ด',
    'AUTOGROP_PROGRESS' => 'ทำการจัดกลุ่มอัตโนมัติเรียบร้อยเเล้ว',

Post Reply

Return to “PHP Knowledge”

Who is online

Users browsing this forum: No registered users and 24 guests