diff --git a/assets/envelope-fill.svg b/assets/envelope-fill.svg
new file mode 100644
index 0000000..966ef94
--- /dev/null
+++ b/assets/envelope-fill.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/assets/telephone-fill.svg b/assets/telephone-fill.svg
new file mode 100644
index 0000000..2e9de2e
--- /dev/null
+++ b/assets/telephone-fill.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/composer.lock b/composer.lock
index a6af971..4377ba9 100644
--- a/composer.lock
+++ b/composer.lock
@@ -57,16 +57,16 @@
},
{
"name": "open-function-computers-llc/rad-theme-engine",
- "version": "v1.0.26",
+ "version": "v1.0.29",
"source": {
"type": "git",
"url": "https://github.com/open-function-computers-llc/rad-theme-engine.git",
- "reference": "17f231ae60eb6b90c5819d11d7c1e540a805f3a6"
+ "reference": "13207fdf9e9241003106958db5a98cc2f0d03f01"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/open-function-computers-llc/rad-theme-engine/zipball/17f231ae60eb6b90c5819d11d7c1e540a805f3a6",
- "reference": "17f231ae60eb6b90c5819d11d7c1e540a805f3a6",
+ "url": "https://api.github.com/repos/open-function-computers-llc/rad-theme-engine/zipball/13207fdf9e9241003106958db5a98cc2f0d03f01",
+ "reference": "13207fdf9e9241003106958db5a98cc2f0d03f01",
"shasum": ""
},
"require": {
@@ -77,6 +77,9 @@
"require-dev": {
"phpunit/phpunit": "^9.5"
},
+ "bin": [
+ "bin/getIcon"
+ ],
"type": "library",
"autoload": {
"psr-4": {
@@ -95,9 +98,9 @@
],
"support": {
"issues": "https://github.com/open-function-computers-llc/rad-theme-engine/issues",
- "source": "https://github.com/open-function-computers-llc/rad-theme-engine/tree/v1.0.26"
+ "source": "https://github.com/open-function-computers-llc/rad-theme-engine/tree/v1.0.29"
},
- "time": "2025-05-06T15:27:11+00:00"
+ "time": "2025-05-13T16:23:34+00:00"
},
{
"name": "salesforce/handlebars-php",
diff --git a/footer.php b/footer.php
index 3d14f36..67e7ea5 100644
--- a/footer.php
+++ b/footer.php
@@ -6,4 +6,12 @@
echo site()->render("footer", [
"menu" => site()->renderMenu("footer-nav"),
+ "address_1" => get_field("address_1", "options"),
+ "address_2" => get_field("address_2", "options"),
+ "city" => get_field("city", "options"),
+ "state" => get_field("state", "options"),
+ "zip" => get_field("zip", "options"),
+ "phone_1" => get_field("phone_1", "options"),
+ "phone_2" => get_field("phone_2", "options"),
+ "contact_email" => get_field("contact_email", "options"),
]);
diff --git a/tpl/footer.tpl b/tpl/footer.tpl
index d227415..cb6ef5d 100644
--- a/tpl/footer.tpl
+++ b/tpl/footer.tpl
@@ -5,6 +5,23 @@

+
+
{{ address_1 }}
+ {{ address_2 }}
+ {{ city }}, {{ state }} {{ zip }}
+
+
+
diff --git a/vendor/bin/getIcon b/vendor/bin/getIcon
new file mode 100755
index 0000000..2c883c9
--- /dev/null
+++ b/vendor/bin/getIcon
@@ -0,0 +1,119 @@
+#!/usr/bin/env php
+realpath = realpath($opened_path) ?: $opened_path;
+ $opened_path = $this->realpath;
+ $this->handle = fopen($this->realpath, $mode);
+ $this->position = 0;
+
+ return (bool) $this->handle;
+ }
+
+ public function stream_read($count)
+ {
+ $data = fread($this->handle, $count);
+
+ if ($this->position === 0) {
+ $data = preg_replace('{^#!.*\r?\n}', '', $data);
+ }
+
+ $this->position += strlen($data);
+
+ return $data;
+ }
+
+ public function stream_cast($castAs)
+ {
+ return $this->handle;
+ }
+
+ public function stream_close()
+ {
+ fclose($this->handle);
+ }
+
+ public function stream_lock($operation)
+ {
+ return $operation ? flock($this->handle, $operation) : true;
+ }
+
+ public function stream_seek($offset, $whence)
+ {
+ if (0 === fseek($this->handle, $offset, $whence)) {
+ $this->position = ftell($this->handle);
+ return true;
+ }
+
+ return false;
+ }
+
+ public function stream_tell()
+ {
+ return $this->position;
+ }
+
+ public function stream_eof()
+ {
+ return feof($this->handle);
+ }
+
+ public function stream_stat()
+ {
+ return array();
+ }
+
+ public function stream_set_option($option, $arg1, $arg2)
+ {
+ return true;
+ }
+
+ public function url_stat($path, $flags)
+ {
+ $path = substr($path, 17);
+ if (file_exists($path)) {
+ return stat($path);
+ }
+
+ return false;
+ }
+ }
+ }
+
+ if (
+ (function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true))
+ || (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper'))
+ ) {
+ return include("phpvfscomposer://" . __DIR__ . '/..'.'/open-function-computers-llc/rad-theme-engine/bin/getIcon');
+ }
+}
+
+return include __DIR__ . '/..'.'/open-function-computers-llc/rad-theme-engine/bin/getIcon';
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 58210eb..9b285e6 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -54,17 +54,17 @@
},
{
"name": "open-function-computers-llc/rad-theme-engine",
- "version": "v1.0.26",
- "version_normalized": "1.0.26.0",
+ "version": "v1.0.29",
+ "version_normalized": "1.0.29.0",
"source": {
"type": "git",
"url": "https://github.com/open-function-computers-llc/rad-theme-engine.git",
- "reference": "17f231ae60eb6b90c5819d11d7c1e540a805f3a6"
+ "reference": "13207fdf9e9241003106958db5a98cc2f0d03f01"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/open-function-computers-llc/rad-theme-engine/zipball/17f231ae60eb6b90c5819d11d7c1e540a805f3a6",
- "reference": "17f231ae60eb6b90c5819d11d7c1e540a805f3a6",
+ "url": "https://api.github.com/repos/open-function-computers-llc/rad-theme-engine/zipball/13207fdf9e9241003106958db5a98cc2f0d03f01",
+ "reference": "13207fdf9e9241003106958db5a98cc2f0d03f01",
"shasum": ""
},
"require": {
@@ -75,7 +75,10 @@
"require-dev": {
"phpunit/phpunit": "^9.5"
},
- "time": "2025-05-06T15:27:11+00:00",
+ "time": "2025-05-13T16:23:34+00:00",
+ "bin": [
+ "bin/getIcon"
+ ],
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -95,7 +98,7 @@
],
"support": {
"issues": "https://github.com/open-function-computers-llc/rad-theme-engine/issues",
- "source": "https://github.com/open-function-computers-llc/rad-theme-engine/tree/v1.0.26"
+ "source": "https://github.com/open-function-computers-llc/rad-theme-engine/tree/v1.0.29"
},
"install-path": "../open-function-computers-llc/rad-theme-engine"
},
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index 1ef4f07..0e2b9ff 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -3,7 +3,7 @@
'name' => 'open-function-computers-llc/wp-theme',
'pretty_version' => 'dev-main',
'version' => 'dev-main',
- 'reference' => 'db52cd69338635ed28050c3df73492e8d38fb98f',
+ 'reference' => 'fd46e2c501b0ea93cef8440b9aed659128ed2f75',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -20,9 +20,9 @@
'dev_requirement' => false,
),
'open-function-computers-llc/rad-theme-engine' => array(
- 'pretty_version' => 'v1.0.26',
- 'version' => '1.0.26.0',
- 'reference' => '17f231ae60eb6b90c5819d11d7c1e540a805f3a6',
+ 'pretty_version' => 'v1.0.29',
+ 'version' => '1.0.29.0',
+ 'reference' => '13207fdf9e9241003106958db5a98cc2f0d03f01',
'type' => 'library',
'install_path' => __DIR__ . '/../open-function-computers-llc/rad-theme-engine',
'aliases' => array(),
@@ -31,7 +31,7 @@
'open-function-computers-llc/wp-theme' => array(
'pretty_version' => 'dev-main',
'version' => 'dev-main',
- 'reference' => 'db52cd69338635ed28050c3df73492e8d38fb98f',
+ 'reference' => 'fd46e2c501b0ea93cef8440b9aed659128ed2f75',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
diff --git a/vendor/open-function-computers-llc/rad-theme-engine/.gitignore b/vendor/open-function-computers-llc/rad-theme-engine/.gitignore
index bc3a6d0..4cad2ad 100644
--- a/vendor/open-function-computers-llc/rad-theme-engine/.gitignore
+++ b/vendor/open-function-computers-llc/rad-theme-engine/.gitignore
@@ -1,3 +1,4 @@
vendor/
composer.lock
-.php.result.cache
\ No newline at end of file
+.php.result.cache
+.phpunit.result.cache
diff --git a/vendor/open-function-computers-llc/rad-theme-engine/.phpunit.result.cache b/vendor/open-function-computers-llc/rad-theme-engine/.phpunit.result.cache
deleted file mode 100644
index 4cf8368..0000000
--- a/vendor/open-function-computers-llc/rad-theme-engine/.phpunit.result.cache
+++ /dev/null
@@ -1 +0,0 @@
-{"version":1,"defects":{"ofc\\tests\\UtilTest::weCanSlugifyAString":3},"times":{"ofc\\tests\\UtilTest::weCanSlugifyAString":0.002}}
\ No newline at end of file
diff --git a/vendor/open-function-computers-llc/rad-theme-engine/bin/getIcon b/vendor/open-function-computers-llc/rad-theme-engine/bin/getIcon
new file mode 100755
index 0000000..ef427d9
--- /dev/null
+++ b/vendor/open-function-computers-llc/rad-theme-engine/bin/getIcon
@@ -0,0 +1,37 @@
+#!/usr/bin/env php
+\n");
+ exit(1);
+}
+
+$icon = trim(strtolower($argv[1]));
+
+try {
+ IconGetter::get($icon);
+} catch (Exception $e) {
+ fwrite(STDERR, "Error: ".$e->getMessage().PHP_EOL);
+ exit(1);
+}
diff --git a/vendor/open-function-computers-llc/rad-theme-engine/composer.json b/vendor/open-function-computers-llc/rad-theme-engine/composer.json
index 7d172b0..2aed46e 100644
--- a/vendor/open-function-computers-llc/rad-theme-engine/composer.json
+++ b/vendor/open-function-computers-llc/rad-theme-engine/composer.json
@@ -10,7 +10,11 @@
"phpunit/phpunit": "^9.5"
},
"license": "MIT",
- "keywords": ["wordpress", "handlebars", "theme"],
+ "keywords": [
+ "wordpress",
+ "handlebars",
+ "theme"
+ ],
"minimum-stability": "stable",
"autoload": {
"psr-4": {
@@ -19,5 +23,8 @@
},
"scripts": {
"post-create-project-cmd": "ofc\\RadThemeEngine::setup"
- }
-}
\ No newline at end of file
+ },
+ "bin": [
+ "bin/getIcon"
+ ]
+}
diff --git a/vendor/open-function-computers-llc/rad-theme-engine/src/IconGetter.php b/vendor/open-function-computers-llc/rad-theme-engine/src/IconGetter.php
new file mode 100644
index 0000000..05b2a1e
--- /dev/null
+++ b/vendor/open-function-computers-llc/rad-theme-engine/src/IconGetter.php
@@ -0,0 +1,2115 @@
+getMessage();
+ return;
+ }
+ echo "Downloaded $name and saved it as $name.svg into the assets directory!".PHP_EOL;
+ }
+}