Remo - Staff listing (real-estate) block

Permalink
I have been searching for something very similar to Remo's staff listing block, the only extra field I need is to be able to add a title/name and then make that title/name a link. Would it be possible to add an extra field to this block?

http://www.codeblog.ch/2009/06/concrete5-staff-table/...

I was intending to use this for a listings page on a real-estate website. I have looked through the forums at C5, and it appears many people are after a similar flexible block for listing, posting or advertising purposes.

Any pointers in right direction would be really appreciated. Does a solution already exist?

PS. Thanks to everyone at C5 (core and community), and Remo too. Great work!

rockshox
 
abovecreative replied on at Permalink Reply
abovecreative
I also need something similar to this, I need one that is very similar to the block as it is but would like Name, Contact Number, Email in separate input boxes which could then be styled with css.
What would be really good is if the input fields names could be customised to what you need. It could then be used for a large number of things.
Pretty sure if this was in the marketplace it would sell pretty well.
c5mix replied on at Permalink Reply
I included a modified version of Remo's block that has fields for Name, Title, Phone #, Email, Description, and Image in my OfficeSpace Theme.
http://c5mix.com/themes/officespace-professional-corporate-concrete...

If you purchase the theme not only will you get a great theme but you'll get this block as well as a Testimonial block - both are included as free extras.
rockshox replied on at Permalink Reply
rockshox
I was considering this as an option. How flexible are the fields within the block, can I reduce the amount of fields to include just an image, title and description?
c5mix replied on at Permalink Reply
Totally flexible. Whatever fields you fill in are what show up
jgarcia replied on at Permalink Reply
jgarcia
I'm working on a package that can be used specifically for what you are talking about. You define the fields yourself and then create a template to display the data.

I'll try to post some screen shots shortly so you can see if this helps for what you are trying to do.
c5mix replied on at Permalink Reply
cant wait to see that justin!
rockshox replied on at Permalink Reply
rockshox
JGarcia, would be great to see your option too. Mucho appreciado
jgarcia replied on at Permalink Reply 4 Attachments
jgarcia
See attached screenshots. This is what has been completed of the backend so far. As you can see on the "Forms" page you create a form and it adds an instance of the form block to that page. You then add/manage your data from right there. There is also a "data" page which is very similar to the default "reports" page in c5, except that you can edit and approve/unapprove (in the instance that you want to allow visitors to submit data) the data that has been added. The list/detail template pages will let you setup template that are used to display the data on the front end (via a block).
rockshox replied on at Permalink Reply
rockshox
That looks brilliant. What stage are you at with development, and what do you plan on doing with it when it is finished?
rockshox replied on at Permalink Reply
rockshox
Will this be released into the marketplace? If so, do you have a time frame?
jgarcia replied on at Permalink Reply
jgarcia
Yes, I do intend to submit this package to the marketplace, though it could be a week or so before it is approved. I would be glad to get it to you before then though if you need it.
rockshox replied on at Permalink Reply
rockshox
JGarcia, that would be really kind of you! If you like I could put it through its paces and then give you some feedback.
elyon replied on at Permalink Reply
elyon
I was just thinking that this would be a useful add-on for Concrete.

I can't tell if this is possible from the screenshots, but if you can, try and make it possible to integrate some of the fields with the file manager. It would be awesome to be able to add page links or files from the file manager and maintain strong references, as no one likes to edit references by hand if something changes!
Remo replied on at Permalink Reply
Remo
About your actual question..

It's quite easy to modify my block.

1. add a new field in db.xml
2. add a new input field in form.php (make sure the name are equal)
3. modify view.php and print the new value

I already built something like garcia mentioned but it's very complicated right now. Has too many features I guess (: I wanted to release it but I'm too busy with work and my thesis. Has to wait for a few more weeks for sure!

There is a more powerful, flexible block (package) going to be released someday. If not by garcia, I'll do it. (Pretty sure I'll release it for free)
jgarcia replied on at Permalink Reply
jgarcia
Remo, you gotta quit posting this free stuff! you're making me feel bad! ;)
Remo replied on at Permalink Reply
Remo
..seems like I'm almost the only one who posts blocks and articles for free (:

Franz and his team released a great piece of software for free and I just want to make sure they're not the only guys who release stuff for free ;)

Wouldn't you like it to check the marketplace once a week and find a nice free addon (toys) to play around with? Okay, I don't want to make you feel guilty anymore! Release your paid package, but don't forget that you might get some competition as soon as my time is not that limited anymore!
jgarcia replied on at Permalink Reply
jgarcia
okay, but just wait at least a month so i can make a little cash!
Remo replied on at Permalink Reply
Remo
you can make even more cash (:

I'm going to need more than a month to finish my thesis (I basically replaced most of my c5 and codeblog stuff with a thesis).
rockshox replied on at Permalink Reply
rockshox
Remo: Thanks for the pointer. I managed to create the extra "Title" field and the block works fine... until I go into edit mode. The new "Title" field now displays the same content as the "Description" field.

Plus, is it possible to add another image field?

JGarcia: If your block does all of the above already then let me know, I'm trying not to consume too much of anyones time.

PS. JGarcia, Remo and C5Mix thanks for all of your help so far!
Remo replied on at Permalink Reply
Remo
check your code in form.php.

You copied the name of the variable as well. You need to modify that.

Image is possible, same procedure, but you need to copy some other code as well.. Need php reading skills for that!
rockshox replied on at Permalink Reply
rockshox
Remo: Thanks for your advice, I have now managed to get the extra text field working, but I am still lacking some important functionality - the ability to create links + add additional images. Unfortunately my PHP just is not that good!

JGarcia: Is there any chance of getting a copy of your real-estate block? I am beginning to run out of time with this project.

Your help is really appreciated.
wizardontherun replied on at Permalink Reply
wizardontherun
Remo, I downloaded the block to the block folder, i did change the folder name from person to mylist, so not to conflict. added some fileds. but when i go to dash board i dont see the block to install?, expand and phpexecute worked fine.

Frank
Remo replied on at Permalink Reply
Remo
Check controller.php. You probably didn't modify the class name.. It must match the folder name!

Folder: bla_test
Controller BlaTestBlockController

first letter capital and after underscore capital letter again
ewc07 replied on at Permalink Reply
remo, I used your block but I'm trying to create 3 columns of text. The 3 text columns are showing up but it keeps repeating the text from the first column into the 2nd and 3rd columns.

Here's the db.xml file:
<?xml version="1.0"?>
<schema version="0.3">
   <table name="btPerson">
      <field name="bID" type="I">
         <key />
         <unsigned />
      </field>
      <field name="fID" type="I">
         <unsigned />
         <default value="0" />
      </field>   
      <field name="fID" type="I">
         <unsigned />
         <default value="0" />
      </field>


here's the view.php file:
<div class="ccm-person">
<?
defined('C5_EXECUTE') or die(_("Access Denied."));
echo "<div class=\"ccm-person-image\"><img src=\"" . $controller->getFileObject()->getURL() . "\" alt=\"\"></div>";
echo "<div class=\"ccm-person-description\">" .nl2br($controller->description) ."</div>";
echo "<div class=\"ccm-person-description2\">" .nl2br($controller->description) ."</div>";
echo "<div class=\"ccm-person-description3\">" .nl2br($controller->description) ."</div>";
?>
<div style="clear:both"></div>
</div>

here's the form.php file:
<? 
defined('C5_EXECUTE') or die(_("Access Denied."));
$includeAssetLibrary = true; 
$assetLibraryPassThru = array(
   'type' => 'image'
);
$al = Loader::helper('concrete/asset_library');
?>
<div class="ccm-block-field-group">
<h2><?=t('Image')?></h2>
<?=$al->image('ccm-b-image', 'fID', t('Choose Image'), $bf);?>
</div>
<div class="ccm-block-field-group">
<h2><?=t('Description')?></h2>
<?= $form->textarea('description', $description, array('style' => 'width: 280px;height:120px;')); ?>

Those are the only files I changed, idea what needs to be changed.

thanks
rockshox replied on at Permalink Reply
rockshox
JGarcia, did your block ever make it to the marketplace? If so, when will it be available?
jgarcia replied on at Permalink Reply
jgarcia
i'm going to try to get it completed tomorrow. i've said that to myself a few times, but i should actually be able to get it done tomorrow. i have been out at a conference the past couple of days, and i didn't have as much free time to work on it as i thought i would. if i haven't posted any more info by mid-afternoon (central time) tomorrow, post again to remind me to give you a status update.
rockshox replied on at Permalink Reply
rockshox
Cheers Mr JG. Will be in touch if needs be.
rockshox replied on at Permalink Reply
rockshox
Hey JGarcia. Yesterday you asked me to ask you tomorrow for a status update. So here I am today asking for a status update.
jgarcia replied on at Permalink Reply 9 Attachments
jgarcia
Okay, so what I am calling the "Data Display" package is pretty much complete. I will be submitting it to the marketplace in the next day or two. If you are interested in getting it sooner, just let me know and we can work something out. It will be sold on the marketplace for $35.

Let me know what you guys think.
okhayat replied on at Permalink Reply
okhayat
Just yesterday, a customer was asking if something for Real Estate was available for Concrete5!!
$35 is an excellent price and I like the way templates are easily created and used.

Great job!
matogertel replied on at Permalink Reply
matogertel
Well done, J!
Somebody had to finally do it. Remo and I (and a few more...) have been promising our own versions for a while, but you're the only one who actually did something in the end. Congratulations!! Looks really good and easy to use.
rockshox replied on at Permalink Reply
rockshox
Nice, looks fantastic. Would definitely be interested! Let me know what to do next.

With the templates, do we have to use tables or can we use div's and CSS? If it is tables only how much CSS control is there?

This block is going to make C5 a better CMS, it seems to be one of the missing links!

Many regards.
jgarcia replied on at Permalink Reply
jgarcia
No, you definitely do not have to use tables. I just used it in the example cause I just wanted to slap it up there really quick and didn't want to worry about having to style everything.

In the listing template you've got 3 sections (really 4, for for the sake of this explanation, 3). Header - displays once at the top of the listing. Content - repeats for each item listed. Footer - displays once at the bottom of the listing. Your HTML/CSS can consist of anything you want for these templates. Of course, it takes a little work to get it setup, but once it's setup you don't really have to be tech savvy at all to add/edit data.

That 4th section I mentioned is the "alternate content" section. It works just like regular content. If you have something specified for alternate content it basically alternates between "content" and "alternate content" when listing out the data, that way you can have alternately styled rows and things like that.

I'm doing some final testing today and will try to get it submitted to the marketplace by EOD tomorrow.
rockshox replied on at Permalink Reply
rockshox
Do you need any help with the testing this block?
rockshox replied on at Permalink Reply
rockshox
Hello JG.

Well I have now had time to experiment with the block you provided, and I must say you have done a great job. The block is complex enough to accommodate most users needs and yet is still quite easy to use.

I didn't find any further bugs to the one you initially pointed out. I am sure once that issue is fixed this block will sell like hot cakes.

All of that said, I have decided not to use the block for the project I am working on because additionally I need the ability to add a Galleria gallery to the Details page. This is my one criticism of the block; I could not easily edit the "generated" Details page. This part of the block seems quite different from the usual C5 work-flow.

I don't want you to think of this as negative criticism. You have created a fantastic block that is currently missing from the C5 marketplace. Also, I can see many useful applications for your listings block. It just wasn't quite right for the project I am working on now.

Thank you for being kind enough to share you hard work, and I hope the above helps you in one way or another.

Good job!
okhayat replied on at Permalink Reply
okhayat
I just had a request for a Real Estate website. Maybe I can use this if it's ready.
ThemeGoodness replied on at Permalink Reply
ThemeGoodness
as well.
jgarcia replied on at Permalink Reply
jgarcia
I'm making some final touches on it right now and intend to submit it to the marketplace tonight...finally!

To be honest...there's a little bit of a learning curve to it. You don't have to be a genius developer to implement it on a site, but you at least have to have some basic HTML skills. Once it's implemented, even your non-techie people should be able to manage it.

I'm going to try to get some tutorials/examples and possibly some screencasts up in the next day to two, which will be posted here when they are ready: http://www.sixeightmedia.net/c5blocks/data-display/...

I'll post here when I've got some stuff up, so if your monitoring this post you will be notified.
jgarcia replied on at Permalink Reply
jgarcia
It's been submitted to the marketplace. I'll have all the details up on my site by EOD tomorrow. Time for me to call it a night for now...
jgarcia replied on at Permalink Reply
jgarcia
RadiantWeb replied on at Permalink Reply
RadiantWeb
great job bro. very flexible and extensible. I am sure it won't be cheep. but it will be very worth it.

....so Frz...we can expect to see that in roughly 2 months then? ;-P
frz replied on at Permalink Reply
frz
might be 3.. ;=P
StriderSEO replied on at Permalink Reply
StriderSEO
Perfect timing on this, have 2 sites coming up that will likely be able to use this. I need to have something done over the weekend, though - what's the usual turn-around time on marketplace approval?

Cheers!
jgarcia replied on at Permalink Reply
jgarcia
The core team is busy putting together a new marketplace system, so it could be a few weeks before this package is released on the marketplace. If you need something sooner, feel free to send me a message here and we'll see what we can work out...
frz replied on at Permalink Reply
frz
will go into some type of production-y beta next week.. so soon... soon.
katz515 replied on at Permalink Reply
katz515
Been busy concrete5 Japanese packaging itself (core stuff) ... I had not been able to think about Add-on itself ;-(

But this was exactly what I was thinking about making...

I suggest you should promote your block to Filemaker users.

In addition, I was thinking about making map function... pretty much intergration with Google Premium Map block.

E.g., create "map" data field, and create KXML creator. (I'm sure it can easily achieved by looking at Page List block and its RSS Tool).

So that your data display block can become

- Real Estate map
- Store locator
- Office locator
- Branch locator

And since you are integrating with Google Map, you will be able to do the distance search as well~.

Keep up on a good work.

And don't forget to promote your block to Filemaker users.
ThemeGoodness replied on at Permalink Reply
ThemeGoodness
I'd be interested in possibly purchasing this before the core tests it, if I have a project come through.

Also and I completely understand if you laugh at this and say no, as I understand it is more work. Is it possible to get a sandbox to play with this add on? For some of us it helps to actually do it versus screen-shots. I completely understand the concept and how the forms will interact but I like to tinker with stuff to find its limitations if that makes sense.
RadiantWeb replied on at Permalink Reply
RadiantWeb
<a href="http://maps.google.com/maps?f=q&amp;hl=en&amp;&saddr=<?php echo $adress ?>">


Google is much cleaner at interpreting comas, spaces, and no comas. you don't even have to clean it up b4 sending anymore.

I used this on my simple event package.
jgarcia replied on at Permalink Reply
jgarcia
I've got a sandbox set up for those of you who would like get a hands-on look at this package.

http://www.sixeightmedia.net/sandbox/index.php/login...

User: datadisplay
Pass: datadisplay

The main limitation is that you cannot edit the form or add a new one. Because it uses an actual form block in the backend, the only way I could let you edit/add forms would be to give full admin access, and even though I'm sure that the C5 community is among the most trustworthy of all CMS communities, I'm afraid a Drupal or Joomla users might come along and try to hack my site... :)

There should still be enough access to give you a very good feel for how the package works though...

Have fun!
ThemeGoodness replied on at Permalink Reply
ThemeGoodness
Thanks for putting that up. I really like this add-on. I have one question for you and I know I will be purchasing regardless of your answer. Is it possible to do if statements? I noticed when I didn't upload a photo (I assumed it would not let me have that much access) it still looked for it on the front end and placed a X missing image thing. So if you could do a if the picture is there grab if not ignore type of thing? Can work around that if not. I really love how you thought of allowing the user to port the data in multiple ways. Users being able to submit data is just wonderful too.

Thanks,

Stephanie
jgarcia replied on at Permalink Reply
jgarcia
there's not currently a "real" way to do that. i've got this running on a site that has the same issue you're speaking of though, and what i've done for the time being is just use javascript (jquery) to say "if the image has no src, hide it". here's the code i've used for that:

<script type="text/javascript">
$(document).ready(function() {
  if($('#my-img-class').attr('src') == CCM_REL + '/files/') {
    $('#my-image-class').hide();
  }
});
</script>


in this case "my-img-class" is the HTML class of the image you are checking. and if there is no image submitted for that item, the value will be path-to-your-site/files/ and if it see that as the value, it hides it.

i'm going to build in a better way to do this that is not javascript dependent in the future, but this is a decent solution for the time being.
Tony replied on at Permalink Reply
Tony
this is an old thread, but just to let anyone who happens upon it know, there's now a dedicated real-estate package in the marketplace:
http://inneroptics.net/concrete5/real-estate/...