diff --git a/__manifest__.py b/__manifest__.py
index f611e47..a844fd1 100755
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -16,14 +16,17 @@ This module extends the Odoo Sign module to allow users to upload images as a fi
],
'assets': {
'web.assets_frontend': [
+ 'sign_image_field/static/src/css/sign_image_field.css',
'sign_image_field/static/src/js/sign_image_upload.js',
'sign_image_field/static/src/xml/sign_items_image.xml',
],
'web.assets_backend': [
+ 'sign_image_field/static/src/css/sign_image_field.css',
'sign_image_field/static/src/js/sign_image_upload.js',
'sign_image_field/static/src/xml/sign_items_image.xml',
],
'sign.assets_public_sign': [
+ 'sign_image_field/static/src/css/sign_image_field.css',
'sign_image_field/static/src/js/sign_image_upload.js',
'sign_image_field/static/src/xml/sign_items_image.xml',
]
diff --git a/data/sign_item_type_data.xml b/data/sign_item_type_data.xml
index 78885c0..6e2a723 100755
--- a/data/sign_item_type_data.xml
+++ b/data/sign_item_type_data.xml
@@ -5,8 +5,8 @@
image
fa-image
Upload an image
- Click to upload image
- 0.2
- 0.05
+ 📷
+ 0.15
+ 0.08
diff --git a/static/src/css/sign_image_field.css b/static/src/css/sign_image_field.css
new file mode 100644
index 0000000..8e7e199
--- /dev/null
+++ b/static/src/css/sign_image_field.css
@@ -0,0 +1,43 @@
+/* Sign Image Field Styles */
+
+.o_sign_sign_item[data-type="image"] {
+ border: 2px dashed #ccc;
+ background-color: #f9f9f9;
+ cursor: pointer;
+ transition: all 0.2s ease;
+}
+
+.o_sign_sign_item[data-type="image"]:hover {
+ border-color: #007bff;
+ background-color: #f0f8ff;
+}
+
+.o_sign_sign_item[data-type="image"] .o_placeholder,
+.o_sign_sign_item .o_placeholder {
+ font-size: 12px !important;
+ color: #666 !important;
+ font-weight: normal !important;
+ white-space: nowrap !important;
+ overflow: hidden !important;
+ text-overflow: ellipsis !important;
+ max-width: 100% !important;
+ display: inline-block !important;
+ line-height: 1 !important;
+}
+
+.o_sign_sign_item[data-type="image"] img {
+ max-width: 100%;
+ max-height: 100%;
+ object-fit: contain;
+ border-radius: 2px;
+}
+
+/* Force reasonable font size for all image placeholders with highest specificity */
+div.o_sign_sign_item[data-type="image"] span.o_placeholder {
+ font-size: 12px !important;
+}
+
+/* Override any inherited font sizes with maximum specificity */
+body div.o_sign_sign_item[data-type="image"] span.o_placeholder {
+ font-size: 12px !important;
+}
\ No newline at end of file
diff --git a/static/src/js/sign_image_upload.js b/static/src/js/sign_image_upload.js
index 2488af4..e8b80d1 100755
--- a/static/src/js/sign_image_upload.js
+++ b/static/src/js/sign_image_upload.js
@@ -7,6 +7,32 @@ patch(SignablePDFIframe.prototype, {
enableCustom(signItem) {
super.enableCustom(signItem);
if (signItem.data.type === 'image') {
+ // Add data-type attribute for CSS targeting
+ signItem.el.setAttribute('data-type', 'image');
+
+ // Function to adjust font size based on container dimensions
+ const adjustFontSize = () => {
+ const placeholder = signItem.el.querySelector('.o_placeholder');
+ if (placeholder) {
+ const containerHeight = signItem.el.offsetHeight;
+ const containerWidth = signItem.el.offsetWidth;
+ // Use the smaller dimension to calculate font size, but make it more reasonable
+ const minDimension = Math.min(containerHeight, containerWidth);
+ const fontSize = Math.max(10, Math.min(16, minDimension * 0.4));
+ placeholder.style.fontSize = fontSize + 'px !important';
+ placeholder.style.lineHeight = '1';
+ }
+ };
+
+ // Initial font size adjustment
+ setTimeout(adjustFontSize, 100);
+
+ // Watch for size changes
+ if (window.ResizeObserver) {
+ const resizeObserver = new ResizeObserver(adjustFontSize);
+ resizeObserver.observe(signItem.el);
+ }
+
const input = signItem.el.querySelector('.o_sign_image_upload_input');
if (!input) return;
diff --git a/static/src/xml/sign_items_image.xml b/static/src/xml/sign_items_image.xml
index 00d0ef3..0f9759f 100755
--- a/static/src/xml/sign_items_image.xml
+++ b/static/src/xml/sign_items_image.xml
@@ -5,13 +5,13 @@
-
+
-
+
@@ -21,13 +21,13 @@
-
-
+
+
-
+