/*+--------------------------------------------------------------------+|CivicCRM版本4.2|+--------------------------------------------------------------------+|此文件是CiviCRM的一部分|| ||CiviCRM是自由软件;您可以复制、修改和分发它||根据GNU事务通用公共许可证的条款||2007年11月19日第3版和CiviCRM许可例外|| ||CiviCRM的发布是希望它会有用,但||无任何担保;甚至没有||适销性或特定用途的适用性||有关更多详细信息,请参阅GNU事务通用公共许可证|| ||你应该已经收到了GNU Affero General Public的副本||许可证和CiviCRM许可例外||使用此程序;如果没有,请联系CiviCRM LLC||请访问info[at]civicrm[DOT]org。如果您对||GNU Affero通用公共许可证或CiviCRM许可证||请参阅CivicCRM许可证常见问题解答,网址为http://civicrm.org/licensing网站 |+--------------------------------------------------------------------+*//**版权所有(C)2009-2010 Xavier Dutoit*根据学术免费许可证3.0版授权给CivicCRM。**//*待验证如果在drupal上不使用干净的url,则必须定义一个变量来设置服务器的url以供其他人使用*/(函数($){var默认值={成功:函数(结果,设置){var successMsg='已保存'+settings.closetxt+''; $(settings.msgbox).addClass('msgok').html(successMsg).show();$(“#closerestmsg”).click(function(){$(settings.msgbox).fadeOut(“慢”);return false;});返回true;},错误:函数(结果,设置){if($(settings.msgbox).length>0){$(settings.msgbox).addClass('msgnok').html(result.error_message);}其他{警报(result.error_message);}返回false;},回调:函数(结果、设置){if(result.is_error==1){return settings.error.call(这个,结果,设置);返回false;}return settings.success.call(this,result,settings);},closetxt:“
【X】
",ajaxURL:“/civicrm/ajax/rest”,消息框:“#restmsg”};$.fn.crmAPI=函数(实体、操作、参数、选项){//params['fnName']=“civicrm/”+实体+“/”+操作;params['entity']=实体;params['action']=动作;params['json']=1;var设置=$.extend({},默认值,选项);$(settings.msgbox).removeClass('msgok').removeClass('msgnok').html(“”);$.ajax(美元)({url:settings.ajaxURL,dataType:“json”,数据:参数,类型:'POST',上下文:此,成功:功能(结果){settings.callBack.call(this,result,settings);}});};$.fn.crmAutocomplete=函数(参数,选项){if(typeof params==“undefined”)params={};if(选项类型==“未定义”)选项={};params=$().extend(){行计数:35,json:1,实体:'联系人',动作:'getquick',顺序:1},参数);//'return':'sort_name,email'选项=$().extend({}{字段:'name',跳过:[‘id’,‘contact_id’,’contact_type’,‘contact_is_deleted’,“电子邮件id”,‘地址id’,'国家id’],结果:函数(数据){console.log(数据);返回false;},formatItem:函数(数据、i、最大值、值、项){var tmp=[];for(数据中的属性){if($.inArray(attr,options.skip)==-1和&data[attr]){tmp.push(数据[属性]);}}return tmp.join('::');}, 解析:函数(数据){var acd=新数组();for(data.values中的cid){删除数据。值[cid][“数据”];//一旦快速搜索不返回数据,将被删除acd.push({data:data.values[cid],value:data.values[cid:sort_name,result:data.values[cid_].sort_name});}返回acd;},延迟:100,最小字符数:1},个选项);var contactUrl=默认值.ajaxURL+“?”+$.param(参数);//contactUrl=contactUrl+“fnName=civicrm/contact/search&json=1&”;//var contactUrl=“/civicrm/ajax/rest?fnName=civicrm/contact/search&json=1&return[sort_name]=1&retain[email]&rowCount=25”;return this.each(function(){var选择器=此;if(类型$.fn.autocomplete!=“函数”)$.fn.autocomplete=cj.fn.自动完成//在引信周围工作var extraP={};extraP[options.field]=函数(){return$(选择器).val();};$(this).autocomplete(contactUrl{extraParams:extraP,formatItem:函数(数据、i、最大值、值、项){返回options.formatItem(data,i,max,value,term);}, parse:函数(数据){返回选项.parse(数据);},宽度:250,延迟:options.delay,最大值:25,数据类型:'json',minChars:选项.minChars,selectFirst:true(选择第一项)}).result(函数(事件、数据、格式化){options.result(数据);}); });}//显示消息或(message=false)清除通知$.fn.crmNotification=函数(消息、类型、项){if(消息===false){if(类型$.noty==“函数”){$.noty.closeAll();}回报;}item=项目类型!=='未定义'?item:空;type=类型!=='未定义'?type:'错误';if(类型$.noty==“函数”)$.noty({“text”:消息,“layout”:“top”,“type”:类型,“animateOpen”:{“height”:“toggle”},“anmateClose”:{“height“:”toggle“},”speed“:500,”timeout“:false,”closeButton“:true,”closureOnSelfClick“:true,”close OnSelfOver“:Truy,”modal“:false});其他{警报(消息);}项目&&控制台&&控制台.log&&console.log(项目);}/*您需要首先初始化此函数:cj.crmURL('init','{crmURL p=“civicrm/example”q=“placeholder”}');*然后您可以像{crmAPI}一样调用它,但在客户端,例如:var url=cj.crmURL('civicrm/contact/view',{reset:1,cid:42});*或$('a.crmURL').crmURL();*/$.extend({“crmURL”:函数(p,参数){如果(p==“init”){$(document).data('civicrm_templateURL',params);//存储并避免污染全局命名空间回报;}var tplURL=$(文档).data('civicrm_templateURL');if(!tplURL){console&&console.log(“您需要先初始化crmURL”);返回;//我们应该警报()还是设置为drupal clean(/civicrm/bla/bla?param)?}var t=tplURL.replace(“civicrm/example”,p);if(typeof(params)==“字符串”){如果(t[0]==“/”)t=t.子串(1);return t.replace(“占位符”,params);}其他return t.replace(“占位符”,$.param(params));}});$.fn.crmURL=function(templateURL){//如果使用cj.crmURL('init')初始化模板URL,则无需每次都设置模板URL;if(!templateURL&&$(document).data('civicrm_templateURL'))templateURL=$(文档).data('civicrm_templateURL');return this.each(function(){var$this=$(this);if(this.href){var frag=$this.attr('ref').split('?');if(片段[1])this.href=$.crmURL(片段[0],片段[1]);其他this.href=$.crmURL(片段[0]);}}); };})(jQuery);//})(cj);