{"id":107,"date":"2025-01-31T13:15:29","date_gmt":"2025-01-31T13:15:29","guid":{"rendered":"https:\/\/janejarviscoaching.co.uk\/academy\/?page_id=107"},"modified":"2026-10-18T10:59:23","modified_gmt":"2026-10-18T10:59:23","slug":"cpluscareinfo","status":"publish","type":"page","link":"https:\/\/janejarviscoaching.co.uk\/academy\/cpluscareinfo\/","title":{"rendered":"Cpluscare info"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"107\" class=\"elementor elementor-107\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7f846b1 e-flex e-con-boxed e-con e-parent\" data-id=\"7f846b1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-10359a6 elementor-widget elementor-widget-image\" data-id=\"10359a6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"563\" height=\"750\" src=\"https:\/\/janejarviscoaching.co.uk\/academy\/wp-content\/uploads\/2025\/08\/rollstablebandage.jpg\" class=\"attachment-large size-large wp-image-2333\" alt=\"\" srcset=\"https:\/\/janejarviscoaching.co.uk\/academy\/wp-content\/uploads\/2025\/08\/rollstablebandage.jpg 563w, https:\/\/janejarviscoaching.co.uk\/academy\/wp-content\/uploads\/2025\/08\/rollstablebandage-225x300.jpg 225w\" sizes=\"(max-width: 563px) 100vw, 563px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d307829 e-flex e-con-boxed e-con e-parent\" data-id=\"6d307829\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5b53a1dd elementor-widget elementor-widget-text-editor\" data-id=\"5b53a1dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>A Guide to the Pony Club C+ Test \u2013 Horse &amp; Pony Care\u00a0<\/h3><p class=\"isSelectedEnd\">This Pony Club C+ Care Guide covers <strong>all the assessment sections of the test in detail<\/strong>, providing candidates with a straightforward, informative guide to help them prepare for their C+ Test.<\/p><h3 data-pm-slice=\"1 1 []\">More than just learning the facts<\/h3><p>Preparing for a Pony Club test isn&#8217;t just about remembering information. It&#8217;s about understanding horses, knowing why we care for them in particular ways, and being able to put that knowledge into practice.<\/p><p>The Equestrian Academy guides have been developed from years of teaching, coaching and assessing Pony Club members. They bring together the information candidates need, with practical explanations, useful examples and pointers to help them prepare for their test.<\/p><p>They&#8217;re designed to support training with a Pony Club coach, helping to build knowledge, understand the reasons behind good horse care and approach the assessment with greater confidence.<\/p><p><strong>Practical knowledge, explained by someone who has been there.<\/strong><\/p><p class=\"isSelectedEnd\">This guide has been written and compiled by <strong>me! <\/strong>I am a BHSI Accredited Professional Performance Coach, BE Level 3 Coach, Pony Club Chief Instructor and Pony Club Assessor at all levels up to A Test.<\/p><p class=\"isSelectedEnd\">\u00a0<\/p><p><strong>\u00a315 \u2014 3 months&#8217; access to the protected online guide<\/strong>, from the date of purchase.<\/p><p><div class=\"swpm-payment-button\">    <div id=\"swpm-button-wrapper-5249\" class=\"swpm-button-wrapper swpm-paypal-buy-now-button-wrapper\">\n\n    <!-- PayPal button container where the button will be rendered -->\n    <div id=\"swpm_paypal_button_0\" style=\"width: 300px;\"><\/div>\n    <!-- Some additiona hidden input fields -->\n    <input type=\"hidden\" id=\"swpm_paypal_button_0-custom-field\" name=\"custom\" value=\"subsc_ref=4&amp;user_ip=216.73.217.103\">\n\n    <script type=\"text\/javascript\">\n        document.addEventListener( \"swpm_paypal_sdk_loaded\", function() { \n            \/\/Anything that goes here will only be executed after the PayPal SDK is loaded.\n            console.log('PayPal JS SDK is loaded.');\n\n            var js_currency_code = 'GBP';\n            var js_payment_amount = 15;\n            var js_quantity = 1;\n            var js_digital_goods_enabled = 1;\n\n            const paypalButtonsComponent = paypal.Buttons({\n                \/\/ optional styling for buttons\n                \/\/ https:\/\/developer.paypal.com\/docs\/checkout\/standard\/customize\/buttons-style-guide\/\n                style: {\n                    color: 'blue',\n                    shape: 'rect',\n                    height: 35,\n                    label: 'buynow',\n                    layout: 'vertical',\n                },\n\n                \/\/ Setup the transaction.\n                createOrder: async function() {\n                    \/\/ Create the order in PayPal using the PayPal API.\n                    \/\/ https:\/\/developer.paypal.com\/docs\/checkout\/standard\/integrate\/\n                    \/\/ The server-side Create Order API is used to generate the Order. Then the Order-ID is returned.                    \n                    console.log('Setting up the AJAX request for create-order call.');\n                    let pp_bn_data = {};\n                    pp_bn_data.button_id = '5249';\n                    pp_bn_data.on_page_button_id = 'swpm_paypal_button_0';\n                    pp_bn_data.item_name = 'C plus care new';\n                    let post_data = 'action=swpm_pp_create_order&data=' + JSON.stringify(pp_bn_data) + '&_wpnonce=6eb802ee77';\n                    try {\n                        \/\/ Using fetch for AJAX request. This is supported in all modern browsers.\n                        const response = await fetch(\"https:\/\/janejarviscoaching.co.uk\/academy\/wp-admin\/admin-ajax.php\", {\n                            method: \"post\",\n                            headers: {\n                                'Content-Type': 'application\/x-www-form-urlencoded'\n                            },\n                            body: post_data\n                        });\n\n                        const response_data = await response.json();\n\n                        if (response_data.order_id) {\n                            console.log('Create-order API call to PayPal completed successfully.');\n                            \/\/If we need to see the order details, uncomment the following line.\n                            \/\/const order_data = response_data.order_data;\n                            \/\/console.log('Order data: ' + JSON.stringify(order_data));\n                            return response_data.order_id;\n                        } else {\n                            const error_message = JSON.stringify(response_data);\n                            console.error('Error occurred during the create-order API call to PayPal. ' + error_message);\n                            throw new Error(error_message);\n                        }\n                    } catch (error) {\n                        console.error(error);\n                        alert('Could not initiate PayPal Checkout...\\n\\n' + JSON.stringify(error));\n                    }\n                },\n    \n                \/\/ handle the onApprove event\n                onApprove: async function(data, actions) {\n                    console.log('Successfully created a transaction.');\n\n                    \/\/Show the spinner while we process this transaction.\n                    const pp_button_container = document.getElementById('swpm_paypal_button_0');\n                    const pp_button_container_wrapper = document.getElementById('swpm-button-wrapper-5249');\n                    const pp_button_spinner_container = pp_button_container_wrapper.querySelector('.swpm-pp-button-spinner-container');\n                    pp_button_container.style.display = 'none'; \/\/Hide the buttons\n                    pp_button_spinner_container.style.display = 'inline-block'; \/\/Show the spinner.\n\n                    \/\/ Capture the order in PayPal using the PayPal API.\n                    \/\/ https:\/\/developer.paypal.com\/docs\/checkout\/standard\/integrate\/\n                    \/\/ The server-side capture-order API is used. Then the Capture-ID is returned.\n                    console.log('Setting up the AJAX request for capture-order call.');\n                    let pp_bn_data = {};\n                    pp_bn_data.order_id = data.orderID;\n                    pp_bn_data.button_id = '5249';\n                    pp_bn_data.on_page_button_id = 'swpm_paypal_button_0';\n                    pp_bn_data.item_name = 'C plus care new';\n\n                    \/\/Add custom_field data. It is important to encode the custom_field data so it doesn't mess up the data with & character.\n                    const custom_data = document.getElementById('swpm_paypal_button_0-custom-field').value;\n                    pp_bn_data.custom_field = encodeURIComponent(custom_data);\n                    \n                    const post_data = new URLSearchParams({\n                        action: 'swpm_pp_capture_order',\n                        data: JSON.stringify(pp_bn_data),\n                        _wpnonce: '6eb802ee77',\n                    }).toString();\n                    \n                    try {\n                        const response = await fetch(\"https:\/\/janejarviscoaching.co.uk\/academy\/wp-admin\/admin-ajax.php\", {\n                            method: \"post\",\n                            headers: {\n                                'Content-Type': 'application\/x-www-form-urlencoded'\n                            },\n                            body: post_data\n                        });\n\n                        const response_data = await response.json();\n                        const txn_data = response_data.txn_data;\n                        const error_detail = txn_data?.details?.[0];\n                        const error_msg = response_data.error_msg;\/\/Our custom error message.\n                        \/\/ Three cases to handle:\n                        \/\/ (1) Recoverable INSTRUMENT_DECLINED -> call actions.restart()\n                        \/\/ (2) Other non-recoverable errors -> Show a failure message\n                        \/\/ (3) Successful transaction -> Show confirmation or thank you message\n\n                        if (response_data.capture_id) {\n                            \/\/ Successful transaction -> Show confirmation or thank you message\n                            console.log('Capture-order API call to PayPal completed successfully.');\n\n                            \/\/Redirect to the Thank you page or Registration page URL if it is set.\n                            const return_url = response_data.redirect_url || '';\n                            if( return_url ){\n                                \/\/redirect to the URL.\n                                console.log('Redirecting to the Thank you page URL: ' + return_url);\n                                window.location.href = return_url;\n                                return;\n                            } else {\n                                \/\/No return URL is set. Just show a success message.\n                                \/\/Important Note: any alert message will block the normal PayPal popup window flow. So we want to show the message on the page instead of using alert.\n                                txn_success_msg = 'Transaction completed successfully!';\n                                const swpm_btn_wrapper_div = document.getElementById('swpm-button-wrapper-5249');\n                                if (swpm_btn_wrapper_div) {\n                                    \/\/ Remove any previous message if it exists\n                                    const old_msg_div = swpm_btn_wrapper_div.querySelector('.swpm-ppcp-txn-success-message');\n                                    if (old_msg_div) old_msg_div.remove();\n\n                                    \/\/ Create new message div\n                                    const new_msg_div = document.createElement('div');\n                                    new_msg_div.className = 'swpm-ppcp-txn-success-message';\n                                    new_msg_div.textContent = txn_success_msg;\n\n                                    \/\/Insert the message div before the button.\n                                    const firstChild = swpm_btn_wrapper_div.firstChild;\n                                    swpm_btn_wrapper_div.insertBefore(new_msg_div, firstChild);\n                                }\n                            }\n\n                        } else if (error_detail?.issue === \"INSTRUMENT_DECLINED\") {\n                            \/\/ Recoverable INSTRUMENT_DECLINED -> call actions.restart()\n                            console.log('Recoverable INSTRUMENT_DECLINED error. Calling actions.restart()');\n                            return actions.restart();\n                        } else if ( error_msg && error_msg.trim() !== '' ) {\n                            \/\/Our custom error message from the server.\n                            console.error('Error occurred during PayPal checkout process.');\n                            console.error( error_msg );\n                            alert( error_msg );\n                        } else {\n                            \/\/ Other non-recoverable errors -> Show a failure message\n                            console.error('Non-recoverable error occurred during PayPal checkout process.');\n                            console.error( error_detail );\n                            \/\/alert('Error occurred with the transaction. Enable debug logging to get more details.\\n\\n' + JSON.stringify(error_detail));\n                        }\n\n                        \/\/Return the button and the spinner back to their orignal display state.\n                        pp_button_container.style.display = 'block'; \/\/ Show the buttons\n                        pp_button_spinner_container.style.display = 'none'; \/\/ Hide the spinner\n\n                    } catch (error) {\n                        console.error(error);\n                        alert('PayPal returned an error! Transaction could not be processed. Enable the debug logging feature to get more details...\\n\\n' + JSON.stringify(error));\n                    }\n                },\n    \n                \/\/ handle unrecoverable errors\n                onError: function(err) {\n                    console.error('An error prevented the user from checking out with PayPal. ' + JSON.stringify(err));\n                    alert( 'Error occurred during PayPal checkout process.\\n\\n' + JSON.stringify(err) );\n                },\n\n                \/\/ handle onCancel event\n                onCancel: function(data) {\n                    console.log('Checkout operation cancelled by the customer.');\n                    \/\/Return to the parent page which the button does by default.\n                }\n            });\n    \n            paypalButtonsComponent\n                .render('#swpm_paypal_button_0')\n                .catch((err) => {\n                    console.error('PayPal Buttons failed to render');\n                });\n\n        });\n    <\/script>\n    <style>\n        @keyframes swpm-pp-button-spinner {\n            to {transform: rotate(360deg);}\n        }\n        .swpm-pp-button-spinner {\n            margin: 0 auto;\n            text-indent: -9999px;\n            vertical-align: middle;\n            box-sizing: border-box;\n            position: relative;\n            width: 60px;\n            height: 60px;\n            border-radius: 50%;\n            border: 5px solid #ccc;\n            border-top-color: #0070ba;\n            animation: swpm-pp-button-spinner .6s linear infinite;\n        }\n        .swpm-pp-button-spinner-container {\n            width: 100%;\n            text-align: center;\n            margin-top:10px;\n            display: none;\n        }\n    <\/style>\n    <div class=\"swpm-pp-button-spinner-container\">\n        <div class=\"swpm-pp-button-spinner\"><\/div>\n    <\/div>\n    <\/div><!-- end of .swpm-button-wrapper -->\n    <\/div><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>A Guide to the Pony Club C+ Test \u2013 Horse &amp; Pony Care\u00a0 This Pony Club C+ Care Guide covers all the assessment sections of the test in detail, providing candidates with a straightforward, informative guide to help them prepare for their C+ Test. More than just learning the facts Preparing for a Pony Club [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"iawp_total_views":173,"footnotes":""},"categories":[],"tags":[],"class_list":["post-107","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/pages\/107","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/comments?post=107"}],"version-history":[{"count":63,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/pages\/107\/revisions"}],"predecessor-version":[{"id":5616,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/pages\/107\/revisions\/5616"}],"wp:attachment":[{"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/media?parent=107"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/categories?post=107"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/janejarviscoaching.co.uk\/academy\/wp-json\/wp\/v2\/tags?post=107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}