moduleActiveAdminmoduleViewsclassFormtasticProxy<::Arbre::Rails::Forms::FormBuilderProxydefsplit_string_on(string,match)return""unlessstring&&matchpart_1=string.split(Regexp.new("#{match}\\z")).first[part_1,match]enddefopening_tag@opening_tag||""enddefclosing_tag@closing_tag||""enddefto_sopening_tag<<children.to_s<<closing_tagendendclassActiveAdminForm<FormtasticProxybuilder_method:active_admin_form_fordefbuild(resource,options={},&block)@resource=resourceoptions=options.deep_dupoptions[:builder]||=ActiveAdmin::FormBuilderform_string=helpers.semantic_form_for(resource,options)do|f|@form_builder=fend@opening_tag,@closing_tag=split_string_on(form_string,"</form>")instance_eval(&block)ifblock_given?# Rails sets multipart automatically if a file field is present,# but the form tag has already been rendered before the block eval.ifmultipart?&&@opening_tag!~/multipart/@opening_tag.sub!(/<form/,'<form enctype="multipart/form-data"')endenddefinputs(*args,&block)ifblock_given?form_builder.template.assigns[:has_many_block]=trueendifblock_given?&&block.arity==0wrapped_block=procdowrap_it=form_builder.already_in_an_inputs_block?true:falseform_builder.already_in_an_inputs_block=truecontent=form_builder.template.capturedoblock.callendform_builder.already_in_an_inputs_block=wrap_itcontentendinsert_tag(SemanticInputsProxy,form_builder,*args,&wrapped_block)elseproxy_call_to_form(:inputs,*args,&block)endenddefinput(*args)proxy_call_to_form:input,*argsenddefactions(*args,&block)block_given??insert_tag(SemanticActionsProxy,form_builder,*args,&block):actions(*args){commit_action_with_cancel_link}enddefcommit_action_with_cancel_linkadd_create_another_checkboxaction(:submit)cancel_linkenddefadd_create_another_checkboxif%w(new create).include?(helpers.action_name)&&active_admin_config&&active_admin_config.create_anothercurrent_arbre_element.add_child(create_another_checkbox)endenddefhas_many(*args,&block)insert_tag(HasManyProxy,form_builder,*args,&block)enddefmultipart?form_builder&&form_builder.multipart?enddefobjectform_builder.objectenddefform_buffersraise"'form_buffers' has been removed from ActiveAdmin::FormBuilder, please read https://github.com/activeadmin/activeadmin/blob/master/docs/5-forms.md for details."endprivatedefcreate_another_checkboxcreate_another=params[:create_another]label=@resource.class.model_name.humanArbre::Context.newdoliclass: 'create_another'doinput(checked: create_another,id: 'create_another',name: 'create_another',type: 'checkbox')label(I18n.t('active_admin.create_another',model: label),for: 'create_another')endendendendclassSemanticInputsProxy<FormtasticProxydefbuild(form_builder,*args,&block)html_options=args.extract_options!html_options[:class]||="inputs"legend=args.shiftifargs.first.is_a?(::String)legend=html_options.delete(:name)ifhtml_options.key?(:name)legend_tag=legend?"<legend><span>#{legend}</span></legend>":""fieldset_attrs=html_options.map{|k,v|%Q{#{k}="#{v}"}}.join(" ")@opening_tag="<fieldset #{fieldset_attrs}>#{legend_tag}<ol>"@closing_tag="</ol></fieldset>"super(*(args<<html_options),&block)endendclassSemanticActionsProxy<FormtasticProxydefbuild(form_builder,*args,&block)@opening_tag="<fieldset class=\"actions\"><ol>"@closing_tag="</ol></fieldset>"super(*args,&block)endendclassHasManyProxy<FormtasticProxydefbuild(form_builder,*args,&block)text_nodeform_builder.has_many(*args,&block)endendendend