This document provides an overview of how to configure the ProdigyView system through an XML configuration file. It explains that the XML file stores system configurations instead of a PHP file for improved performance. The XML configuration controls email settings, sessions, the system router, and error reporting through sections for general settings, email, sessions, and system. It also provides instructions for downloading an example configuration file and installing the system to test configuration changes.
This document provides an overview of how to send emails with various headers using PHP. It discusses requirements, examples, the main email fields like sender, recipient, subject and message. It also covers additional fields like carbon copies, blind copies, reply-to, errors to, message ID. It explains how to send HTML vs text emails and attach files. The document includes code examples and links to additional tutorials.
This document provides instructions on how to install a plugin in ProdigyView. It explains the required fields for a plugin like the unique name, name, language, etc. that need to be specified when installing in the database. It also covers the directory and main file structure of a plugin. The last steps show how to download an example plugin, install it in the environment, and include it so that it is loaded during the bootstrap process.
This document provides instructions on building a basic application in ProdigyView, including following code examples and requiring an understanding of installing applications and DEFINES. It outlines setting up an access file, a single command interpreter entry point, and private application functions. The command interpreter controls application response and can call functions. Extending the PVApplication class simplifies implementing the command interpreter. Calling the application requires specifying its ID and commands through pv_exec. Additional tutorials are available on the ProdigyView website.
This document provides instructions on how to install an application into a ProdigyView database. It explains that application files are structured and passed as an array to PVApplications::installApplication(), with each field like app_name, app_unique_id, app_directory being described. It also covers setting values like app_enabled and application_language. The document recommends reviewing the PVApplications API and provides a link to additional tutorials on the ProdigyView website.
Learn how to manipulate video content of ProdigyView’s built-in content management system. Also learn how to upload a video file directly into the cms.
This document provides an overview of how to manage audio content within ProdigyView's content management system. It describes how to create, search, update, and delete audio content by extending the base content class and utilizing fields specific to audio files. Methods like createAudioContent(), getAudioContentList(), updateAudioContent(), and deleteContent() allow manipulating audio content and its associated audio files in the database.
This document provides an overview of how to configure the ProdigyView system through an XML configuration file. It explains that the XML file stores system configurations instead of a PHP file for improved performance. The XML configuration controls email settings, sessions, the system router, and error reporting through sections for general settings, email, sessions, and system. It also provides instructions for downloading an example configuration file and installing the system to test configuration changes.
This document provides an overview of how to send emails with various headers using PHP. It discusses requirements, examples, the main email fields like sender, recipient, subject and message. It also covers additional fields like carbon copies, blind copies, reply-to, errors to, message ID. It explains how to send HTML vs text emails and attach files. The document includes code examples and links to additional tutorials.
This document provides instructions on how to install a plugin in ProdigyView. It explains the required fields for a plugin like the unique name, name, language, etc. that need to be specified when installing in the database. It also covers the directory and main file structure of a plugin. The last steps show how to download an example plugin, install it in the environment, and include it so that it is loaded during the bootstrap process.
This document provides instructions on building a basic application in ProdigyView, including following code examples and requiring an understanding of installing applications and DEFINES. It outlines setting up an access file, a single command interpreter entry point, and private application functions. The command interpreter controls application response and can call functions. Extending the PVApplication class simplifies implementing the command interpreter. Calling the application requires specifying its ID and commands through pv_exec. Additional tutorials are available on the ProdigyView website.
This document provides instructions on how to install an application into a ProdigyView database. It explains that application files are structured and passed as an array to PVApplications::installApplication(), with each field like app_name, app_unique_id, app_directory being described. It also covers setting values like app_enabled and application_language. The document recommends reviewing the PVApplications API and provides a link to additional tutorials on the ProdigyView website.
Learn how to manipulate video content of ProdigyView’s built-in content management system. Also learn how to upload a video file directly into the cms.
This document provides an overview of how to manage audio content within ProdigyView's content management system. It describes how to create, search, update, and delete audio content by extending the base content class and utilizing fields specific to audio files. Methods like createAudioContent(), getAudioContentList(), updateAudioContent(), and deleteContent() allow manipulating audio content and its associated audio files in the database.
This document discusses how to configure default values for the PVMail class in ProdigyView. It explains how to set default values for the sender, mailer, SMTP host, username, password, and port. These default values will be used if not overridden when calling methods like PVMail::sendMail() or PVMail::sendEmailSMTP(). The document also provides links to examples, the API reference, and more tutorials.
This document provides an overview of creating and submitting forms in ProdigyView. It discusses the required understanding of HTML form elements and PVHtml. It then demonstrates creating a basic form using various form elements like text inputs, textareas, buttons, selects, radios, checkboxes and more. It also discusses options that can be passed to form elements to define attributes. The document encourages reviewing the PVForms API reference and checking additional tutorials for more details.
This document provides an overview of HTML tags that can be used with ProdigyView. It discusses headers, paragraphs, divs, hyperlinks, links, meta tags, spans, strong text, images, lists, iframes, and includes code examples of how to implement each tag. The document recommends reviewing the ProdigyView API reference and checking the website for additional tutorials.
The document discusses tools in the ProdigyView toolkit. It describes 5 tools: 1) a random string generator, 2) text truncation, 3) forming URIs, 4) searching arrays, and 5) generating URLs. Examples are provided for each tool to illustrate its use. The document encourages readers to visit the ProdigyView website for additional tutorials on using the toolkit.
This document discusses how to create custom validation rules in ProdigyView. There are three main ways to add custom validation: 1) Using the check() method to check values against built-in rules, 2) Creating functions to define custom validation logic, and 3) Using regular expressions with preg_match. The document provides code examples for each approach and recommends exploring the ProdigyView API documentation and tutorials for more information on validation.
This document provides an overview of basic file caching in ProdigyView to improve server performance. It demonstrates how to write, read, check expiration, and delete cache files. Key aspects include initializing the cache object, setting cache options like expiration time and name, and storing different data types like objects and arrays. The document recommends checking if cache has expired before reading or writing, and only updating the cache content after expiration. It links to an API reference and more tutorials for additional information.
This document discusses how to add JavaScript and CSS libraries in ProdigyView. It explains how to queue different library types including JavaScript, JQuery, Prototype, Mootools, and CSS. It also covers retrieving queued scripts and displaying them, with the location of each type defined by variables. The document provides an example and encourages learning more through the templating and API reference tutorials.
The document discusses adding external PHP libraries to a ProdigyView application. It provides examples of loading libraries by adding library files to the PV_LIBRARIES directory and using the PVLibraries class. Testing involves creating a flipSwitch() method to test if library classes are loaded correctly. The document recommends loading all files in a library folder instead of limiting to certain extensions to ensure all classes are included.
This document discusses prepared statements in databases. Prepared statements can insert, select, update, and delete data more securely and efficiently than plain SQL queries. The key advantages are prevention of SQL injection and faster execution. The document provides code examples for inserting, selecting, updating, and deleting data using prepared statements. It explains the use of placeholders and prepared statement methods.
The document provides an overview of connecting to and querying a database using ProdigyView. It discusses disabling the database, setting up a connection, creating a table, sanitizing data, executing insert, update and select queries, and iterating through results. Multiple ways to retrieve data from queries are demonstrated, including getting the row count and fields. Connecting to and switching between multiple databases is presented as a challenge.
Implementing the Adapter Design PatternProdigyView
Adapters allow one class to use another class's methods through inheritance. In ProdigyView, adapters completely replace the execution of a method without changing core code by calling another method. The example demonstrates adding an adapter to a Car class's "build" method to change the results. First a default result is shown, then an adapter is added to call a new Adapter class's method instead.
Dynamic objects in ProdigyView allow adding methods and variables to objects after they are created. This is done by extending classes from PVObject or PVStaticObject, which provide collections and enable object-oriented and aspect-oriented programming. Methods are added using anonymous functions and the addMethod() function. Variables are added with addToCollectionWithName() or by directly assigning with ->. The collection stores variables and methods can retrieve or modify them.
This document provides a tutorial on how to customize select queries in ProdigyView without modifying core code. It discusses the standard search query and how to customize various clauses like the where clause, select list, joins, group by, having, order by, limit, prequery, and pagination. It explains each clause and provides examples of how to modify them to expand the capabilities of ProdigyView without custom development. The tutorial is estimated to take 5 minutes to complete.
The document provides an overview of PHP objects and functions for beginners. It discusses static methods, public methods, protected methods, private methods, and anonymous functions. Examples are given for each concept to demonstrate how to define them and call them. The document concludes by challenging readers to create a class with a static protected method containing an anonymous function.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
This document discusses how to configure default values for the PVMail class in ProdigyView. It explains how to set default values for the sender, mailer, SMTP host, username, password, and port. These default values will be used if not overridden when calling methods like PVMail::sendMail() or PVMail::sendEmailSMTP(). The document also provides links to examples, the API reference, and more tutorials.
This document provides an overview of creating and submitting forms in ProdigyView. It discusses the required understanding of HTML form elements and PVHtml. It then demonstrates creating a basic form using various form elements like text inputs, textareas, buttons, selects, radios, checkboxes and more. It also discusses options that can be passed to form elements to define attributes. The document encourages reviewing the PVForms API reference and checking additional tutorials for more details.
This document provides an overview of HTML tags that can be used with ProdigyView. It discusses headers, paragraphs, divs, hyperlinks, links, meta tags, spans, strong text, images, lists, iframes, and includes code examples of how to implement each tag. The document recommends reviewing the ProdigyView API reference and checking the website for additional tutorials.
The document discusses tools in the ProdigyView toolkit. It describes 5 tools: 1) a random string generator, 2) text truncation, 3) forming URIs, 4) searching arrays, and 5) generating URLs. Examples are provided for each tool to illustrate its use. The document encourages readers to visit the ProdigyView website for additional tutorials on using the toolkit.
This document discusses how to create custom validation rules in ProdigyView. There are three main ways to add custom validation: 1) Using the check() method to check values against built-in rules, 2) Creating functions to define custom validation logic, and 3) Using regular expressions with preg_match. The document provides code examples for each approach and recommends exploring the ProdigyView API documentation and tutorials for more information on validation.
This document provides an overview of basic file caching in ProdigyView to improve server performance. It demonstrates how to write, read, check expiration, and delete cache files. Key aspects include initializing the cache object, setting cache options like expiration time and name, and storing different data types like objects and arrays. The document recommends checking if cache has expired before reading or writing, and only updating the cache content after expiration. It links to an API reference and more tutorials for additional information.
This document discusses how to add JavaScript and CSS libraries in ProdigyView. It explains how to queue different library types including JavaScript, JQuery, Prototype, Mootools, and CSS. It also covers retrieving queued scripts and displaying them, with the location of each type defined by variables. The document provides an example and encourages learning more through the templating and API reference tutorials.
The document discusses adding external PHP libraries to a ProdigyView application. It provides examples of loading libraries by adding library files to the PV_LIBRARIES directory and using the PVLibraries class. Testing involves creating a flipSwitch() method to test if library classes are loaded correctly. The document recommends loading all files in a library folder instead of limiting to certain extensions to ensure all classes are included.
This document discusses prepared statements in databases. Prepared statements can insert, select, update, and delete data more securely and efficiently than plain SQL queries. The key advantages are prevention of SQL injection and faster execution. The document provides code examples for inserting, selecting, updating, and deleting data using prepared statements. It explains the use of placeholders and prepared statement methods.
The document provides an overview of connecting to and querying a database using ProdigyView. It discusses disabling the database, setting up a connection, creating a table, sanitizing data, executing insert, update and select queries, and iterating through results. Multiple ways to retrieve data from queries are demonstrated, including getting the row count and fields. Connecting to and switching between multiple databases is presented as a challenge.
Implementing the Adapter Design PatternProdigyView
Adapters allow one class to use another class's methods through inheritance. In ProdigyView, adapters completely replace the execution of a method without changing core code by calling another method. The example demonstrates adding an adapter to a Car class's "build" method to change the results. First a default result is shown, then an adapter is added to call a new Adapter class's method instead.
Dynamic objects in ProdigyView allow adding methods and variables to objects after they are created. This is done by extending classes from PVObject or PVStaticObject, which provide collections and enable object-oriented and aspect-oriented programming. Methods are added using anonymous functions and the addMethod() function. Variables are added with addToCollectionWithName() or by directly assigning with ->. The collection stores variables and methods can retrieve or modify them.
This document provides a tutorial on how to customize select queries in ProdigyView without modifying core code. It discusses the standard search query and how to customize various clauses like the where clause, select list, joins, group by, having, order by, limit, prequery, and pagination. It explains each clause and provides examples of how to modify them to expand the capabilities of ProdigyView without custom development. The tutorial is estimated to take 5 minutes to complete.
The document provides an overview of PHP objects and functions for beginners. It discusses static methods, public methods, protected methods, private methods, and anonymous functions. Examples are given for each concept to demonstrate how to define them and call them. The document concludes by challenging readers to create a class with a static protected method containing an anonymous function.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
2. Overview
Objective
Learn how to manipulate image content of ProdigyView’s built-
in content management system. Also learn how to upload an
image file directly to the cms.
Requirements
Installed version of ProdigyView with a database
Understanding of base content
Understanding of the DEFINES in ProdigyView
Estimated Time
12 minutes
www.prodigyview.com
3. Follow Along With Code
Example
1. Download a copy of the example code at
www.prodigyview.com/source.
2. Install the system in an environment you feel comfortable
testing in.
3. Proceed to examples/content/ImageContentExample.php
4. What Is Image Content?
Image content is content involves displaying an image.
Image Content in the cms supports uploading files directly
into the cms. The formats that can be used with the file
upload is png, jpeg, and gifs. Use image for web
applications such as in the example below and what ever
your imagination can expand too.
Galleries Photo Albums
Showcases Blogging
Ecommerce Products etc
www.prodigyview.com
5. Extends Base Content
Like the other content types, image content extends base
content. This means it has all the fields that base content
has in addition to the fields that describes an image.
Image Content Fields Base Content Fields
www.prodigyview.com
6. Create Image Content
Image content is relatively easy to create. In an array, passed
defined fields into PVContent::createImageContent method.
1. Define the content that will be stored as image content
3. Return content id 2. Pass the array to PVContent::createTextContent
7. Database View
Remember that the image content utilizes both the base
content and image content fields. This is accomplished
by joining two tables. Your two tables in the database
should look something like below.
Base Content Database View
Image Content Database View
8. Image Content
Fields
The previous slide only showed a
few fields that can be set when
defining image content. Here is a
complete list of fields that apply only
to the image content.
www.prodigyview.com
9. Creating An Image with File
A feature of the image content in ProdigyView is the ability
upload files while creating or updating content. For the next
example, change your sample code to
examples/content/ImageContentExampleWithFile.php
10. Image File Arguments
Similar to creating a normal image, creating an image with a file is
accomplished through setting arguments. In the example below,
we are using an image from our file system. But it can be set the
same way using PHP’s $_FILES global.
1. Name of the file 2. The location the file currently resides
3. The size of the file 4. The type of file
11. Create Image With a File
Now pass those arguments to the
PVContent::createImageWithFile() method. The content
id will be return and the image placed in your PV_IMAGE
define folder.
12. Database View
The file will be uploaded will be placed in the PV_IMAGE folder
and a reference link will be placed in the database. Your database
should look something like this:
1. Mime type 2. Image size
3. Auto generated random file name 4. Generated file name of thumbnail
www.prodigyview.com
13. Search for Image Content
Using the syntax from the PV Standard Search Query, we
can search for content related to images on using fields for
both base content and image content.
1. Search based on the passed arguments
2. Pass args into getImageContentList()
method
3. Returns an array of arrays that
contains the list of event content
14. Iterate Through The List
Next we can iterate through the list of image content to
see the data we just added.
1. Iterate through the fields base content
2. With the automatic joining of the tables, image
content fields are also returned
15. Retrieving Image Content
Image content can also be retrieved directly using the
content id. The data associated with that event id will be
returned in array.
1. Pass in the content id
2. Content is returned in an array
3. Get the values of the array by specifying
the associated index
16. Updating Image Content
That array contains the information for updating image content.
Simply change a value at an index in the array and pass it to
PVContent::updateImageContent() method. Remember the
content_id variable is required.
1. Update the owner id of the content array
2. Pass the array back to update
17. Updating With File
Referring back to
examples/content/ImageContentExampleWithFile.php, we
can also update the image file associated with the content id.
The old file will be replaced.
1. Set the name of the file 2. The current location of the file to
copy
3. The size of the file 4. The type of the file
18. Deleting Image Content
The last action to take place is deleting the image content.
To delete content, we pass the content id into
PVContent::deleteContent method.
All the content types(audio, video, event, etc) use the
PVContent::deleteContent method. Associated files
will be deleted also.
www.prodigyview.com
19. Review
1. Create image content by passing an array of arguments into
PVContent::createImageContent()
2. PVContent::createImageContent() will return the id of the
newly generated image content
3. Search for image content by using the syntax from PV
Standard Search Query and passing those arguments into
PVContent::getImageContentList()
4. Update content by passing an array of accepted fields in
PVContent::updateImageContent(). The content_id must
be present for this method to work.
5. Delete image content by passing the content_id into
PVContent::deleteContent().
www.prodigyview.com
20. API Reference
For a better understanding of image content, visit the api
by clicking on the link below.
PVContent
More Tutorials
For more tutorials, please visit:
http://www.prodigyview.com/tutorials
www.prodigyview.com