Hệ thống pháp luật

ỦY BAN NHÂN DÂN
THÀNH PHỐ HỒ CHÍ MINH
-------

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
---------------

Số: 1452/QĐ-UBND

Thành phố Hồ Chí Minh, ngày 14 tháng 4 năm 2023

 

QUYẾT ĐỊNH

VỀ VIỆC PHÊ DUYỆT QUY TRÌNH NỘI BỘ GIẢI QUYẾT THỦ TỤC HÀNH CHÍNH TRONG LĨNH VỰC ĐƯỜNG BỘ THUỘC PHẠM VI CHỨC NĂNG QUẢN LÝ CỦA SỞ GIAO THÔNG VẬN TẢI

CHỦ TỊCH ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH

Căn cứ Luật Tổ chức chính quyền địa phương ngày 19 tháng 6 năm 2015; Luật sửa đổi, bổ sung một số điều của Luật Tổ chức Chính phủ và Luật Tổ chức chính quyền địa phương ngày 22 tháng 11 năm 2019;

Căn cứ Nghị định số 63/2010/NĐ-CP ngày 08 tháng 6 năm 2010 của Chính phủ về kiểm soát thủ tục hành chính; Nghị định số 92/2017/NĐ-CP ngày 07 tháng 8 năm 2017 của Chính phủ sửa đổi, bổ sung một số điều của các nghị định liên quan đến kiểm soát thủ tục hành chính; Nghị định số 61/2018/NĐ-CP ngày 23 tháng 4 năm 2018 của Chính phủ về thực hiện cơ chế một cửa, một cửa liên thông trong giải quyết thủ tục hành chính;

Căn cứ Thông tư số 01/2018/TT-VPCP ngày 23 tháng 11 năm 2018 của Bộ trưởng, Chủ nhiệm Văn phòng Chính phủ hướng dẫn thi hành một số quy định của Nghị định số 61/2018/NĐ-CP ngày 23 tháng 4 năm 2018 của Chính phủ về thực hiện cơ chế một cửa, một cửa liên thông trong giải quyết thủ tục hành chính;

Căn cứ Quyết định số 1802/QĐ-UBND ngày 27 tháng 5 năm 2022 của Chủ tịch Ủy ban nhân dân Thành phố về phê duyệt phương án tái cấu trúc, đơn giản hóa thủ tục hành chính;

Xét đề nghị của Giám đốc Sở Giao thông vận tải tại Tờ trình số 3241/TTr-SGTVT ngày 28 tháng 03 năm 2023,

QUYẾT ĐỊNH:

Điều 1. Phê duyệt kèm theo Quyết định này quy trình nội bộ giải quyết thủ tục hành chính đối với Thủ tục cấp giấy phép thi công xây dựng công trình thiết yếu trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ đã được tái cấu trúc thuộc phạm vi chức năng quản lý của Sở Giao thông vận tải.

Danh mục và nội dung chi tiết của các quy trình nội bộ được đăng tải trên Cổng thông tin điện tử của Văn phòng Ủy ban nhân dân Thành phố tại địa chỉ http://vpub.hochiminhcity.gov.vn/portal/Home/danh-muc-tthc/default.aspx.

Điều 2. Tổ chức thực hiện

1. Các quy trình nội bộ giải quyết thủ tục hành chính đã được phê duyệt là cơ sở để xây dựng quy trình điện tử, thực hiện việc tiếp nhận, giải quyết và trả kết quả thủ tục hành chính trên Hệ thống thông tin giải quyết thủ tục hành chính Thành phố.

2. Cơ quan, đơn vị thực hiện thủ tục hành chính có trách nhiệm:

a) Tuân thủ theo quy trình nội bộ đã được tái cấu trúc khi tiếp nhận, giải quyết thủ tục hành chính cho cá nhân, tổ chức; không tự đặt thêm thủ tục, giấy tờ ngoài quy định pháp luật.

b) Thường xuyên rà soát, cập nhật các quy trình nội bộ giải quyết thủ tục hành chính được phê duyệt mới, sửa đổi, bổ sung, thay thế, hủy bỏ, bãi bỏ khi có biến động theo quy định pháp luật.

Điều 3. Hiệu lực thi hành

Quyết định có hiệu lực thi hành từ ngày ký. Bãi bỏ quy trình nội bộ số 02 tại Danh mục quy trình nội bộ ban hành kèm theo Quyết định số 5111/QĐ-UBND ngày 02 tháng 12 năm 2019 của Chủ tịch Ủy ban nhân dân Thành phố

Điều 4. Chánh Văn phòng Ủy ban nhân dân Thành phố, Giám đốc Sở Giao thông vận tải, Giám đốc Sở Thông tin và Truyền thông và các tổ chức, cá nhân có liên quan chịu trách nhiệm thi hành Quyết định này./.

 


Nơi nhận:
- Như Điều 4;
- Văn phòng Chính phủ (Cục Kiểm soát TTHC);
- TTUB: CT; các PCT;
- VPUB: CPVP;
- Sở Thông tin và Truyền thông (để cập nhật Hệ thống thông tin giải quyết TTHC)
- Trung tâm Tin học, Trung tâm Công báo;
- Lưu: VT, KSTT/H.

CHỦ TỊCH




Phan Văn Mãi

 

QUY TRÌNH ĐÃ ĐƯỢC TÁI CẤU TRÚC

QUY TRÌNH

Cấp phép thi công xây dựng công trình thiết yếu trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ

(Ban hành kèm theo Quyết định số 1452/QĐ-UBND ngày 14 tháng 4 năm 2023 của Chủ tịch Ủy ban nhân dân Thành phố)

I. THÀNH PHẦN HỒ SƠ

STT

Tên hồ sơ

Số lượng

Ghi chú

01

Đơn đề nghị cấp giấy phép thi công công trình (theo mẫu)

01

Bản chính

02

Văn bản chấp thuận xây dựng công trình thiết yếu của cơ quan quản lý đường bộ có thẩm quyền.

01

Bản sao có chứng thực hoặc bản sao kèm theo bản chính để đối chiếu

(Đối với Văn bản chấp thuận của cơ quan quản lý có sử dụng hệ thống văn bản điện tử liên thông thì chỉ cần bản sao)

03

Bản thiết kế bản vẽ thi công, trong đó có biện pháp tổ chức thi công bảo đảm an toàn giao thông đã được phê duyệt theo quy định. Bản vẽ thiết kế bao gồm các thành phần như sau: bình đồ, trắc dọc, trắc ngang, vị trí đoạn tuyến có xây dựng công trình, thể hiện đầy đủ tọa độ, cao độ theo hệ tọa độ chuẩn Quốc gia. Các bản vẽ phải thể hiện đầy đủ vị trí các công trình hiện hữu nằm trong khu vực xây dựng công trình và khu vực ảnh hưởng bởi việc xây dựng công trình, trong đó thành phần hồ sơ đính kèm theo các tập tin định dạng *.dwg và *.pdf hoặc tương tự nhằm phục vụ cập nhật dữ liệu (các tập tin không bắt buộc phải có trong thành phần hồ sơ)

*Đối với các công trình có quy mô nhỏ như: gắn đồng hồ nước riêng lẻ của tổ chức, cá nhân, hồ sơ đấu nối thoát nước vào hệ thống chung của tổ chức, cá nhân: Thành phần hồ sơ thiết kế không bao gồm trắc dọc, trắc ngang, tọa độ, cao độ tuyệt đối.

02

Bản sao có chứng thực hoặc bản sao kèm theo bản chính để đối chiếu

II. NƠI TIẾP NHẬN, TRẢ KẾT QUẢ, THỜI GIAN VÀ LỆ PHÍ

Nơi tiếp nhận và trả kết quả

Thời gian xử lý

Lệ phí

- Trực tiếp: Bộ phận Một cửa - Sở Giao thông vận tải TPHCM (Sở SGTVT), địa chỉ: 63 Lý Tự Trọng, Bến Nghé, Quận 1, Hồ Chí Minh .

- Nộp hồ sơ qua mạng: tại cổng dịch vụ công trực tuyến của thành phố (http://dichvucong.hochiminhcity.gov.vn) và trả kết quả tại Bộ phận Một cửa - Sở SGTVT.

06 ngày làm việc kể từ ngày nhận đủ hồ sơ hợp lệ

Không

III. TRÌNH TỰ XỬ LÝ CÔNG VIỆC

Bước công việc

Nội dung công việc

Trách nhiệm

Thời gian

Hồ sơ/Biểu mẫu

Diễn giải

B1

Nộp hồ sơ

Tổ chức, đơn vị

Giờ hành chính

Theo Mục I

- Chuẩn bị thành phần hồ sơ theo mục I.

- Nộp hồ sơ tại Bộ phận một cửa - Sở GTVT.

Kiểm tra hồ sơ

Bộ phận một cửa

- BM 01

- BM 02

- BM03

- Theo Mục I

- Trường hợp hồ sơ đầy đủ và hợp lệ: Lập Giấy tiếp nhận hồ sơ và hẹn trả kết quả; trao cho người nộp hồ sơ theo BM 01; thực hiện tiếp bước B2.

- Trường hợp hồ sơ chưa đầy đủ hoặc chưa hợp lệ: Hướng dẫn người nộp hồ sơ bổ sung, hoàn thiện hồ sơ và ghi rõ lý do theo BM 02.

- Trường hợp từ chối tiếp nhận hồ sơ: Lập Phiếu từ chối tiếp nhận giải quyết hồ sơ theo BM03.

B2

Tiếp nhận hồ sơ

Bộ phận một cửa

0,25 ngày làm việc (02 giờ)

Theo Mục I

- Tiếp nhận hồ sơ theo quy định.

- Chuyển giao hồ sơ đến phòng chuyên môn.

B9

Phân công xử lý

Lãnh đạo Phòng chuyên môn giải quyết TTHC

0,25 ngày làm việc (02 giờ)

- Theo Mục I

Lãnh đạo Phòng chuyên môn tiếp nhận hồ sơ từ Bộ phận một cửa và phân công chuyên viên thụ lý hồ sơ.

B10

Thẩm định, đề xuất kết quả giải quyết TTHC

Chuyên viên thụ lý giải quyết TTHC

04 ngày làm việc

- Theo Mục I

- Hồ sơ trình:

Tờ trình đề xuất cấp phép

Dự thảo Giấy phép hoặc Văn bản trả lời từ chối cấp phép

- Chuyên viên thụ lý hồ sơ tiến hành xem xét, tổng hợp và đề xuất kết quả giải quyết hồ sơ:

Nếu hồ sơ đạt: soạn Tờ trình, dự thảo Giấy phép.

Nếu hồ sơ không đạt: dự thảo Văn bản trả lời từ chối cấp phép, nêu rõ lý do.

- Trình Lãnh đạo Phòng duyệt ký.

B11

Duyệt ký

Lãnh đạo Phòng chuyên môn giải quyết TTHC

01 ngày làm việc

- Theo Mục I

- Hồ sơ trình

- Giấy phép hoặc Văn bản trả lời từ chối cấp phép

- Lãnh đạo Phòng xem xét hồ sơ ký duyệt Giấy phép hoặc Văn bản trả lời từ chối cấp phép.

- Chuyển hồ sơ cho chuyên viên thụ lý.

B12

Ban hành văn bản

Chuyên viên thụ lý giải quyết TTHC

0,25 ngày làm việc (02 giờ)

Giấy phép hoặc Văn bản trả lời từ chối cấp phép

- Lấy số, pho to Giấy phép hoặc Văn bản trả lời từ chối cấp phép.

- Chuyển Giấy phép hoặc Văn bản trả lời từ chối cấp phép đến Văn thư Sở.

B13

Phát hành Văn bản

Văn thư Sở

0,25 ngày làm việc (02 giờ)

Giấy phép hoặc Văn bản trả lời từ chối cấp phép

- Đóng dấu, phát hành Giấy phép hoặc Văn bản trả lời từ chối cấp phép.

- Chuyển Giấy phép hoặc Văn bản trả lời từ chối cấp phép đến Bộ phận một cửa của Sở.

B15

Trả kết quả

Bộ phận một cửa

Theo Giấy hẹn

Giấy phép hoặc Văn bản trả lời từ chối cấp phép

- Trả kết quả cho tổ chức/đơn vị.

- Thống kê, theo dõi lưu trữ hồ sơ theo quy định.

IV. BIỂU MẪU

Các biểu mẫu sử dụng tại các bước công việc:

STT

Mã hiệu

Tên biểu mẫu

1

BM01

Mẫu Giấy tiếp nhận hồ sơ và hẹn trả kết quả.

2

BM 02

Mẫu Phiếu yêu cầu bổ sung, hoàn thiện hồ sơ

3

BM 03

Mẫu Phiếu từ chối tiếp nhận giải quyết hồ sơ

4

BM 04

Mẫu Đơn đề nghị cấp giấy phép thi công công trình

V. HỒ SƠ CẦN LƯU

STT

Mã hiệu

Tên biểu mẫu

1

BM01

Mẫu Giấy tiếp nhận hồ sơ và hẹn trả kết quả (lưu trên phần mềm)

2

BM 02

Mẫu Phiếu yêu cầu bổ sung và hoàn thiện hồ sơ (nếu có)

3

BM 03

Mẫu Phiếu từ chối giải quyết tiếp nhận hồ sơ (nếu có)

4

BM 04

Đơn đề nghị cấp giấy phép thi công công trình

5

//

Các hồ sơ khác theo văn bản pháp quy hiện hành

VI. CƠ SỞ PHÁP LÝ

- Nghị định số 61/2018/NĐ-CP ngày 23 tháng 4 năm 2018 của Chính phủ về thực hiện cơ chế một cửa, một cửa liên thông trong giải quyết thủ tục hành chính.

- Thông tư 01/2018/TT-VPCP ngày 23 tháng 11 năm 2018 của Văn phòng Chính phủ hướng dẫn thi hành một số quy định của Nghị định số 61/2018/NĐ-CP ngày 23 tháng 4 năm 2018 của Chính phủ về thực hiện cơ chế một cửa, một cửa liên thông trong giải quyết thủ tục hành chính.

- Quyết định số 09/2014/QĐ-UBND ngày 20 tháng 02 năm 2014 của Ủy ban nhân dân thành phố về việc ban hành Quy định về thi công xây dựng công trình thiết yếu trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ trên địa bàn Thành phố Hồ Chí Minh;

- Quyết định 30/2018/QĐ-UBND ngày 04 tháng 9 năm 2018 của Ủy ban nhân dân thành phố Sửa đổi, bổ sung một số điều tại Quyết định số 09/2014/QĐ-UBND ngày 20 tháng 02 năm 2014 của Ủy ban nhân dân thành phố quy định về thi công xây dựng công trình thiết yếu trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ.

 

CÔNG TRÌNH TRONG PHẠM VI BẢO VỆ KẾT CẤU HẠ TẦNG GIAO THÔNG ĐƯỜNG BỘ

(Ban hành kèm theo Quyết định số 09/2014/QĐ-UBND ngày 20 tháng 02 năm 2014 của Ủy ban nhân dân thành phố)

TÊN CƠ QUAN ĐƠN VỊ (1)
CHỦ ĐẦU TƯ (2)
-------

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
---------------

Số: ……
V/v trình hồ sơ đề nghị cấp giấy phép thi công công trình ….

TP. Hồ Chí Minh, ngày ... tháng ... năm 202...

 

ĐƠN ĐỀ NGHỊ CẤP PHÉP THI CÔNG CÔNG TRÌNH

Cấp phép thi công (....3….. )

Kính gửi:…………………… (...4...)

- Căn cứ Nghị định số 11/2010/NĐ-CP ngày 24 tháng 02 năm 2010 của Chính phủ Quy định về quản lý và bảo vệ kết cấu hạ tầng giao thông đường bộ;

- Căn cứ Thông tư số 39/2011/TT-BGTVT ngày 18 tháng 5 năm 2011 của Bộ trưởng Bộ Giao thông vận tải hướng dẫn thực hiện một số điều của Nghị định số 11/2010/NĐ-CP ngày 24 tháng 02 năm 2010 của Chính phủ Quy định về quản lý và bảo vệ kết cấu hạ tầng giao thông đường bộ;

- Căn cứ Quy định về thi công xây dựng công trình trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ trên địa bàn Thành phố Hồ Chí Minh ban hành kèm theo Quyết định số     /QĐ-UBND ngày   tháng   năm 2012 của Ủy ban nhân dân Thành phố Hồ Chí Minh;

- Căn cứ (....5....)

- (…. 2….. ) đề nghị được cấp phép thi công (....6....) tại (....7....). Thời gian thi công bắt đầu từ ngày.... tháng....năm .... đến hết ngày... tháng...năm...

Xin gửi kèm theo các tài liệu sau:

(... 5...) (bản sao có xác nhận của Chủ đầu tư).

(...8...) (bản chính).

(...9...)

(....2....) xin cam kết tự di chuyển hoặc cải tạo công trình và không đòi bồi thường khi ngành đường bộ có yêu cầu di chuyển hoặc cải tạo; đồng thời, hoàn chỉnh các thủ tục theo quy định của pháp luật có liên quan để công trình được triển khai xây dựng trong thời hạn có hiệu lực của Văn bản chấp thuận. Đồng thời (....2....) xin cam kết thực hiện đầy đủ các biện pháp bảo đảm giao thông thông suốt, an toàn theo quy định, hạn chế ùn tắc giao thông đến mức cao nhất và không gây ô nhiễm môi trường.

(...2...) xin cam kết thi công theo đúng Hồ sơ thiết kế đã được (...10...) phê duyệt và tuân thủ theo quy định của Giấy phép thi công. Nếu thi công không thực hiện các biện pháp bảo đảm giao thông thông suốt, an toàn theo quy định, để xảy ra tai nạn giao thông, ùn tắc giao thông, ô nhiễm môi trường nghiêm trọng, (...2...) chịu trách nhiệm theo quy định của pháp luật.

Địa chỉ liên hệ: ……………………….

Số điện thoại: ………………………..

 


Nơi nhận:
- Như trên;
- ………………;
- ………………;
- Lưu VT.

(……. 2......)
QUYỀN HẠN, CHỨC VỤ CỦA NGƯỜI KÝ
(ký, ghi rõ họ tên và đóng dấu)

 

Hướng dẫn ghi trong Đơn đề nghị

(1) Tên tổ chức hoặc cơ quan cấp trên của đơn vị hoặc tổ chức đứng Đơn đề nghị (nếu có)

(2) Tên đơn vị hoặc tổ chức đứng Đơn đề nghị cấp phép thi công (công trình hoặc thi công trên đường bộ đang khai thác).

(3) Ghi vắn tắt tên công trình hoặc hạng mục công trình đề nghị cấp phép, quốc lộ, địa phương; ví dụ “Cấp phép thi công đường ống cấp nước sinh hoạt trong phạm vi bảo vệ kết cấu hạ tầng giao thông đường bộ của Quốc lộ 1, quận 12”.

(4) Tên cơ quan cấp phép thi công (Sở Giao thông vận tải hoặc Ủy ban nhân dân các quận, huyện);

(5) Văn bản chấp thuận xây dựng hoặc chấp thuận thiết kế công trình của cơ quan quản lý đường bộ có thẩm quyền.

(6) Ghi đầy đủ tên công trình hoặc hạng mục công trình đề nghị cấp phép thi công.

(7) Ghi đầy đủ rõ lý trình, tên đường quốc lộ, thuộc địa bàn quận huyện nào.

(8) Hồ sơ Thiết kế bản vẽ thi công (trong đó có Biện pháp tổ chức thi công đảm bảo an toàn giao thông) đã được cấp có thẩm quyền phê duyệt.

(9) Các tài liệu khác nếu (....2....) thấy cần thiết.

(10) Cơ quan phê duyệt Thiết kế bản vẽ thi công./.

 



span', 'dctk > span', 'dctd > span']; var hasChild = selectors.some(function(selector) { return clickedElement.closest(selector).find('span').length > 0; }); if (!hasChild) { var totalSubLevels = 1; } else { function findMatchingParent(element) { var parent = element.parent(); if (parent.length === 0) return null; for (var i = 0; i < selectors.length; i++) { if (parent.is(selectors[i])) { superLevel++; return parent; } } return findMatchingParent(parent); } var parentElement = findMatchingParent(clickedElement); while (parentElement !== null) { level++; parentElement = findMatchingParent(parentElement); } var closestElement = clickedElement.closest(selectors.join(', ')); var nodeName = closestElement.prop('nodeName').toLowerCase(); var className = closestElement.attr('class'); var textContent = closestElement.text().trim(); var address = selectors.find(function(selector) { return closestElement.is(selector); }); var totalSubLevels = closestElement.find('span').length + 1; var parent_id = closestElement.parent().attr('id'); var variableName = 'parent_id_' + level; // Gán giá trị của parent_id cho biến động này window[variableName] = parent_id; } if (totalSubLevels>1) { var dynamicVars = {}; var variableName = 'parent_id_' + level; dynamicVars[variableName] = parent_id; var buble_id = dynamicVars[variableName]; } else { buble_id = 'dc_' + $(this).parent().attr('id'); } if ($this.next('.pointy').length === 0) { $this.after('

'); } var $pointer = $this.next('.pointer'); var $canvas = $this.next('canvas'); var $pointy = $canvas.next('div.pointy'); if ($pointy.is(':visible')) { } if ($pointer.is(':visible')) { } else { if ($('#ajax_tra_cuu').is(':visible')) { $('#ajax_tra_cuu').hide(); } $("#right_info_col").css('height', '1px'); $('#rightdocinfo').hide('slow'); $('#r-toc').hide('slow'); if ($('button#toggleSidebar').length) { if (parseInt($('#customSidebar').css('right'),10) == 0) { $('#customSidebar').animate({ right: '-280px' }, 500); $('#toggleSidebar').html(''); } else { } } if ($pointy.is(':visible')) { var $pointer = $canvas.next('.pointer'); if ($pointer.is(':visible')) { $pointer.hide(); $canvas.hide(); } else { } } else { if ($canvas.length==1) { var $canvas = $this.next('canvas'); var $pointer = $canvas.next('.pointer'); if ($pointer.length>0) { $pointer.show(); $canvas.show(); } $('.pointer').removeClass('pointy-active'); $('.pointer').css({'z-index':1}); $('canvas.pointy').removeClass('pointy-active'); $('canvas.pointy').css({'z-index':1}); $pointer.css({'z-index':9999}); $canvas.css({'z-index':9999}); if (level==0) { if (totalSubLevels==1) { scrollTop_offset = $pointer.offset().top - $(window).height() / 4; } else { scrollTop_offset = $pointer.offset().top - $('#nav-tab-vb').height()-10; } $('html,body').animate({ scrollTop: scrollTop_offset }, 'slow'); } } else { $pointer.show(); if ($pointy.length==0) { var elementOffset = $(this).position().top; var windowHeight = $(window).height()-20 - $('#nav-tab-vb').height(); if (level>0 && e.originalEvent === undefined) { //clicked by js var pointerHeight = Math.max(250, Math.min((windowHeight * 0.8)/(level+1), 450)); var newTop = elementOffset - (pointerHeight / 2); var maxTop = $(document).height() - pointerHeight; newTop = Math.max(0, Math.min(newTop, maxTop)); } else { var pointerHeight = Math.max(250, Math.min((windowHeight * 0.8)/totalSubLevels, 450)); var newTop = elementOffset - (pointerHeight / 2); var maxTop = $(document).height() - pointerHeight; newTop = Math.max(0, Math.min(newTop, maxTop)); } if (level>0 && e.originalEvent === undefined) { newTop = newTop+pointerHeight+10; } var position = $this.position(); $pointer.css({ left: $('#doc-left-col, #noi_dung_dk').width() + 50 + "px", width: $('#doc-right-col').width()-30, height: pointerHeight, 'z-index': 9999, top: newTop + "px" }); $this.pointy({ pointer: $pointer, defaultClass: 'zindex', activeClass: 'pointy-active', arrowWidth: 20 }); var initialTop = $pointer.position().top; $pointer.draggable({ containment: 'document', drag: function() { if (screen.width<1280) { var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); } $this.trigger('pointy-update'); } }); $pointer.on('click', '.close_pointy', function(e) { $pointer.hide(); $pointer.prev('canvas.pointy').hide(); }); var isDragging = false, startX, startY, offsetX, offsetY; var startDragging = function(e) { if (checkIfScrollingContent(e)) return; if ($(e.target).is('.close_pointy')) { return; } isDragging = true; var touch = e.originalEvent.touches[0]; var pos = $pointer.position(); startX = touch.pageX; startY = touch.pageY; offsetX = startX - pos.left; offsetY = startY - pos.top-$pointer.height()-$pointer.height()/1.365; var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); //e.preventDefault(); }; var duringDragging = function(e) { if (checkIfScrollingContent(e)) return; if (isDragging) { var touch = e.originalEvent.touches[0]; var moveX = touch.pageX; var moveY = touch.pageY; if (screen.width<1280) { var newLeft = moveX - offsetX; var newTop = moveY - offsetY-$pointer.height()-$pointer.height()/1.365; if (newLeft < 0) { newLeft = 0; } else if (newLeft + $pointer.outerWidth() > $(window).width()) { newLeft = $(window).width() - $pointer.outerWidth(); } if (newTop < initialTop) { newTop = initialTop; } $pointer.css({ left: newLeft, top: newTop }); } else { var newLeft = moveX - offsetX; var newTop = moveY - offsetY-$pointer.height()-$pointer.height()/1.365; if (newLeft < 0) { newLeft = 0; } else if (newLeft + $pointer.outerWidth() > $(window).width()) { newLeft = $(window).width() - $pointer.outerWidth(); } $pointer.css({ left: newLeft, top: newTop }); } $pointer.prev('canvas.pointy').hide(); //e.preventDefault(); } }; var stopDragging = function(e) { $pointer.prev('canvas.pointy').show(); if (checkIfScrollingContent(e)) return; if (screen.width<1280) { var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); } $this.trigger('pointy-update'); }; function checkIfScrollingContent(e) { if ($(e.target).closest('.list_tds').length > 0) { //e.stopPropagation(); return true; } return false; } $pointer.on('touchstart', startDragging); $pointer.on('touchmove', duringDragging); $pointer.on('touchend', stopDragging); var updatePointerPosition = function() { var offset = $this.position(); var windowHeight = $(window).height() - $('#nav-tab-vb').height()-20; var pointerHeight = Math.max(250, Math.min((windowHeight * 0.8)/totalSubLevels, 450)); var elementOffset = $this.position().top; var newTop = elementOffset - (pointerHeight / 2); var maxTop = $(document).height() - pointerHeight; newTop = Math.max(0, Math.min(newTop, maxTop)); $pointer.css({ left: $('#doc-left-col, #noi_dung_dk').width() + 50 + "px", width: $('#doc-right-col').width() - 30, height: pointerHeight, top: newTop + "px" }); }; $(window).on('resize orientationchange', function() { updatePointerPosition(); var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); $this.trigger('pointy-update'); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); }); } } } if ($pointer.is(':visible')) { if (level==0) { if (totalSubLevels==1) { scrollTop_offset = $pointer.offset().top - $(window).height() / 4; } else { scrollTop_offset = $pointer.offset().top - $('#nav-tab-vb').height()-10; } $('html,body').animate({ scrollTop: scrollTop_offset }, 'slow'); } } } $pointer.css('opacity', '1'); $('.pointy').click(function(e) { //e.preventDefault(); //e.stopPropagation(); }); var parent = $(this).parent(); var dataCT = parent.attr('data-ct'); var dataDC = parent.attr('data-dc'); var dataTN = parent.attr('data-tn'); var loai_buble = parent.prop('nodeName').toLowerCase(); var text_html = $(this).text(); if (loai_buble=='cttd' || loai_buble=='a') { pointer_html = ''; } else if(loai_buble=='dctd') { if (this.hasAttribute('o-title')) { tieu_de_dan_chieu = $(this).attr('o-title'); } else { tieu_de_dan_chieu = text_html; } pointer_html = ''; } else if(loai_buble=='dctk') { pointer_html = ''; } if ($pointer.find('#chu_thich_buble_'+buble_id).length) { } else { $pointer.html(pointer_html); } if (loai_buble=='cttd' || loai_buble=='a') { var load_cttd = setInterval(function(){ if (!$pointer.find('#noi_dung_buble_'+buble_id + ' .dc_'+buble_id+'_loading').length) { $.ajax({ type: 'POST', url: '/ajax/vanban/chu-thich/', data: { 'ndct': dataCT, 'id_ct': buble_id, 'dc_text': text_html }, success: function(response) { $("#noi_dung_buble_" + buble_id).html(response); if ($(document).width()>=1280){$this.trigger('pointy-update');} clearInterval(load_cttd); } }); $('#noi_dung_buble_'+buble_id + ' .dc_loading').addClass('dc_'+buble_id+'_loading'); } },500); } else if(loai_buble=='dctd') { var load_cttd = setInterval(function(){ if ($pointer.find('#noi_dung_buble_'+buble_id + ' .dc_loading').length){ if (dataDC.length == 32) { $.ajax({ type: 'POST', url: '/ajax/public/dan-chieu/' + dataDC, data: { 'text_dan_chieu': text_html }, success: function(response) { $("#noi_dung_buble_" + buble_id).html(response); if ($(document).width()>=1280){$this.trigger('pointy-update');} clearInterval(load_cttd); } }); } else { $("#noi_dung_buble_" + buble_id).load('/ajax/public/dan-chieu/' + dataDC + '/'); if ($(document).width()>=1280){$this.trigger('pointy-update');} clearInterval(load_cttd); } } else { clearInterval(load_cttd); } },500); } else if(loai_buble=='dctk') { if ($('#noi_dung_buble_'+buble_id + ' .dc_loading').length){ $.ajax({ type: 'POST', url: '/ajax/vanban/chu-thich/', data: { 'ndct': dataCT, 'id_ct': buble_id, 'loai_hd': 'noi_dung_tham_khao', 'dc_text': text_html }, success: function(response) { $("#noi_dung_buble_" + buble_id).html(response); if ($(document).width()>=1280){$this.trigger('pointy-update');} } }); } } $('.pointer').removeClass('pointy-active'); $('.pointer').css({'z-index':1}); $('canvas.pointy').removeClass('pointy-active'); $('canvas.pointy').css({'z-index':1}); $pointer.css({'z-index':9999}); $canvas.css({'z-index':9999}); $('.pointer').on('mouseenter mouseleave click touchstart', function() { // Khi di chuột vào $('.pointer').removeClass('pointy-active'); $('.pointer').css({'z-index':1}); $(this).css({'z-index':9999}); $('canvas.pointy').removeClass('pointy-active'); $('canvas.pointy').css({'z-index':1}); $(this).prev('canvas.pointy').addClass('pointy-active'); $(this).prev('canvas.pointy').css({'z-index':9999}); } ); var list_tds_max_height_interval = setInterval(function(){ if ($pointer.find('.list_tds').length) { var windowHeight = $(window).height()-20 - $('#nav-tab-vb').height(); var pointerHeight = Math.max(250, Math.min((windowHeight * 0.8)/totalSubLevels, 450)); $pointer.find('.list_tds').css('max-height', pointerHeight + 'px'); clearInterval(list_tds_max_height_interval); } },50); $(window).resize(function() { if ($(document).width()<=768) { $pointer.hide(); $pointer.prev('canvas.pointy').hide(); } var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); var list_tds_max_height_interval = setInterval(function(){ if ($pointer.find('.list_tds').length) { var windowHeight = $(window).height()-20 - $('#nav-tab-vb').height(); var pointerHeight = Math.max(250, Math.min((windowHeight * 0.8)/totalSubLevels, 450)); $pointer.find('.list_tds').css('max-height', pointerHeight + 'px'); clearInterval(list_tds_max_height_interval); } },50); }); var parentElement = $(this).parent(); var selectors = 'cttd.chuthichtudong > span, a.chuthichtudong > span, dctk > span, dctd > span'; // Find and click all matching child elements parentElement.find(selectors).each(function() { //$(this).click(); }); var cap_nhat_pointy_top = setInterval(function(){ if ($this.position().top-$this.parent().height()+10!=$pointer.prev('canvas.pointy').position().top) { $pointer.prev('canvas.pointy').css({'top': $this.position().top-$this.parent().height()+10+'px'}); clearInterval(cap_nhat_pointy_top); } else { clearInterval(cap_nhat_pointy_top); } },50); }); }); function random_string_id(numstr) { var text = ""; var possible = "abcdefghijklmnopqrstuvwxyz0123456789"; for (var i = 0; i < numstr; i++) text += possible.charAt(Math.floor(Math.random() * possible.length)); return text; } let lastChosen = null; let lastChosentr = null; function scroll_den_hd(ndsh_dich_address) { if (lastChosen) { $(lastChosen).css('background-color', ''); } if (lastChosentr) { $(lastChosentr).css('background-color', ''); } lastChosen = $('[href="javascript:scroll_den_hd(\'' + ndsh_dich_address + '\')"]'); lastChosentr = $('[data-ct="' + ndsh_dich_address + '"]'); $(lastChosen).css('background-color', 'yellow'); $(lastChosentr).css('background-color', 'yellow'); var targetElement = $('[address="' + ndsh_dich_address + '"]'); $('.selected_dchd').removeClass('selected_dchd'); targetElement.addClass('selected_dchd'); targetElement.children('p').children('cttd').click(); targetElement.children('cttd').click(); targetElement.children('p').children('dctk').click(); targetElement.children('dctk').click(); } $(document).ready(function() { $(document).on('click', 'cttd.chuthichtudong span, a.chuthichtudong span, dctk span, dctd span', function() { $('#modal_noi_dung_tra_phi .modal-dialog.zoom').removeAttr('style'); openModal('#modal_noi_dung_tra_phi','/ajax/member/m-register/'); $('.pointer, canvas').css({ 'z-index': '50', 'important': true }); }); });