/** * 6) Kolumny w tabeli klientów: następny SMS, typ SMS, akcje */ add_filter('manage_kt_client_posts_columns', function ($cols) { $cols['next_sms'] = 'Następny SMS'; $cols['sms_type'] = 'Typ SMS'; $cols['sms_actions'] = 'Akcje'; return $cols; }); add_action('manage_kt_client_posts_custom_column', function ($col, $post_id) { if ($col === 'next_sms') { $install = get_post_meta($post_id, 'install_date', true); if (!$install) { echo 'brak daty'; return; } try { $install_date = new DateTime($install); } catch (Exception $e) { echo 'błąd daty'; return; } $today = new DateTime('today'); $diff = $install_date->diff($today); $years = (int) $diff->y; // Rok 0 → SMS 14 dni if ($years === 0) { $d14 = clone $install_date; $d14->modify('+14 days'); echo $d14->format('Y-m-d'); return; } // Rok 1 → Twój moduł roczny if ($years === 1) { $r1 = clone $install_date; $r1->modify('+12 months -30 days'); echo $r1->format('Y-m-d'); return; } // Rok 2+ → wieloletnie $next = clone $install_date; $next->modify('+' . $years . ' years -30 days'); echo $next->format('Y-m-d'); } if ($col === 'sms_type') { $install = get_post_meta($post_id, 'install_date', true); if (!$install) { echo '-'; return; } try { $install_date = new DateTime($install); } catch (Exception $e) { echo '-'; return; } $today = new DateTime('today'); $diff = $install_date->diff($today); $years = (int) $diff->y; if ($years === 0) { echo '14 dni'; } elseif ($years === 1) { echo 'Roczny (gwarancja)'; } elseif ($years >= 2 && $years <= 5) { echo 'Roczny ' . $years . ' (gwarancja)'; } else { echo 'Roczny ' . $years . ' (bez gwarancji)'; } } if ($col === 'sms_actions') { echo 'Anuluj '; echo 'Wyślij teraz'; } }, 10, 2); /** * 7) Akcja: anuluj następny SMS */ add_action('admin_post_kt_cancel_next_sms', function () { if (!current_user_can('manage_options')) wp_die('Brak uprawnień.'); $id = (int) $_GET['client']; if ($id) { update_post_meta($id, '_cancel_next_sms', 'yes'); } wp_redirect(admin_url('edit.php?post_type=kt_client')); exit; }); /** * 8) Akcja: wyślij SMS teraz */ add_action('admin_post_kt_send_sms_now', function () { if (!current_user_can('manage_options')) wp_die('Brak uprawnień.'); $id = (int) $_GET['client']; if (!$id) wp_die('Brak ID.'); $phone = get_post_meta($id, 'client_phone', true); if (!$phone) wp_die('Brak numeru.'); // Używamy tej samej logiki co w CRON $install = get_post_meta($id, 'install_date', true); if (!$install) wp_die('Brak daty montażu.'); try { $install_date = new DateTime($install); } catch (Exception $e) { wp_die('Błąd daty.'); } $today = new DateTime('today'); $diff = $install_date->diff($today); $years = (int) $diff->y; // Treść SMS zależna od roku if ($years <= 5) { $raw = "Dzień dobry {IMIE}. Dla zachowania komfortu i higieny klimatyzacji montowanej {DATA_MONTAZU} warto wykonać okresowy przegląd: czyszczenie, dezynfekcję oraz kontrolę gwarancyjną. Producent wymaga takiego przeglądu, aby przedłużyć gwarancję o kolejny rok. Jeśli chcesz, napisz proszę SMS — dobiorę termin, który Ci pasuje."; } else { $raw = "Dzień dobry {IMIE}. Minęło już ponad 5 lat od montażu klimatyzacji ({DATA_MONTAZU}). Dla zachowania higieny i pełnej wydajności urządzenia warto wykonać okresowy przegląd: czyszczenie, dezynfekcję oraz kontrolę techniczną. Jeśli chcesz, napisz proszę SMS — dobiorę dogodny termin."; } $msg = kt_crm_render_sms_template($raw, $id); if (function_exists('kt_httpsms_send_sms')) { kt_httpsms_send_sms($phone, $msg); kt_crm_mark_sms_sent($id, 'Ręczne wysłanie SMS'); kt_crm_log_sms($id, $phone, $msg, 'Ręczne wysłanie SMS', 'manual'); } wp_redirect(admin_url('edit.php?post_type=kt_client')); exit; }); KlimaTuchów Klimatyzacja https://validator.w3.org/feed/docs/rss2.html Montaż klimatyzacji Klimatyzacja Daikin montaż Klimatyzacja Gree montaż Klimatyzator Daikin Ururu Sarara FTXZ 3.5kW Klimatyzator Daikin Ururu Sarara FTXZ 5.0kW Sklep-online Klimatyzator Daikin Emura FTXJ 2.0kW Klimatyzator Daikin Ururu Sarara FTXZ 2.5kW Klimatyzator Daikin Sensira FTXF 7.1kW Klimatyzator Daikin Sensira FTXF 6.0kW Klimatyzator Daikin Sensira FTXF 5.0kW Klimatyzator Daikin Sensira FTXF 4.2kW Klimatyzator Daikin Sensira FTXF 3.5kW Klimatyzator Daikin Sensira FTXF 2.5kW Klimatyzator Daikin Sensira FTXF 2.0kW Klimatyzator Daikin Comfora FTXP 2.5kW Klimatyzator Daikin Comfora FTXP 3.5kW Klimatyzator Daikin Comfora FTXP 5.0kW Klimatyzator Daikin Comfora FTXP 6.0kW Klimatyzator Daikin Comfora FTXP 7.1kW Klimatyzator Daikin Comfora FTXP 2.0kW Klimatyzator Daikin Emura FTXJ 2.5kW Klimatyzator Daikin Emura FTXJ 3.5kW Klimatyzator Daikin Emura FTXJ 4.2kW Klimatyzator Daikin Emura FTXJ 5.0kW Klimatyzator Daikin Perfera FTXM 7.1kW Klimatyzator Daikin Perfera FTXM 6.0kW Klimatyzator Daikin Perfera FTXM 5.0kW Klimatyzator Daikin Perfera FTXM 4.2kW Klimatyzator Daikin Perfera FTXM 3.5kW Klimatyzator Daikin Perfera FTXM 2.5kW Klimatyzator Daikin Perfera FTXM 2.0kW Klimatyzator Daikin Stylish FTXA 5.0kW Klimatyzator Daikin Stylish FTXA 4.2kW Klimatyzator Daikin Stylish FTXA 3.4kW Klimatyzator Daikin Stylish FTXA 2.5kW Klimatyzator Daikin Stylish FTXA 2.0kW Klimatyzacja Skrzyszów Montaż Klimatyzacja Krosno Montaż Klimatyzacja Pińczow montaż Klimatyzacja Busko-Zdrój Montaż Klimatyzacja Kraków montaż Klimatyzacja Brzesko Montaż Klimatyzacja Dębica Montaż Klimatyzator TCL ELITE TAC-09CHSD/XA82IN Black 2.6kW Klimatyzacja Gorlice Montaż Klimatyzacja Nowy Sącz montaż Klimatyzacja Tarnów Montaż Klimatyzacja z montażem do 3000zł Start